• 关于序列化协议,你需要知道的一些内容(2)


    本篇我们来继续讨论一下关于序列化协议需要知道的一些内容。

    问题【1】在常用序列化协议中,Fastjson有哪些优点?

    Fastjson是采用一种“假定有序快速匹配”的算法。优点:接口简单易用、目前java语言中最快的json库

    问题【2】在常用序列化协议中,Fastjson有哪些缺点?

    过于注重快,而偏离了“标准”及功能性、代码质量不高,文档不全。

    问题【3】在常用序列化协议中的Fastjson主要适用场景有哪些?

    协议交互、Web输出、Android客户端

    问题【4】在常用序列化协议中的Thrift主要适用场景有哪些?

    分布式系统的RPC解决方案

    问题【5】在常用序列化协议中,Thrift有哪些缺点?

    使用者较少、跨防火墙访问时,不安全、不具有可读性,调试代码时相对困难、不能与其他传输层协议共同使用(例如HTTP)、无法支持向持久层直接读写数据,即不适合做数据持久化序列化协议。

    问题【6】在常用序列化协议中,Thrift有哪些优点?

    Thrift,不仅是序列化协议,还是一个RPC框架。优点:序列化后的体积小, 速度快、支持多种语言和丰富的数据类型、对于数据字段的增删具有较强的兼容性、支持二进制压缩编码。

    问题【7】在常用序列化协议中的Avro主要适用场景有哪些?

    在Hadoop中做Hive、Pig和MapReduce的持久化数据格式

    问题【8】在常用序列化协议中,Avro有哪些缺点?

    对于习惯于静态类型语言的用户不直观

    问题【9】在常用序列化协议中,Avro有哪些优点?

    Avro,Hadoop的一个子项目,解决了JSON的冗长和没有IDL的问题。优点:支持丰富的数据类型、简单的动态语言结合功能、具有自我描述属性、提高了数据解析速度、快速可压缩的二进制数据形式、可以实现远程过程调用RPC、支持跨编程语言实现。

  • 相关阅读:
    @Excel注解
    javassist 入门以及dubbo中的使用案例
    C++中的mutable关键字
    学会这些python知识,就可以去面试了
    Altium Designer20 批量修改元件丝印大小和位置
    easyRL蘑菇书阅读笔记(一)
    [Raspberry Pi] Raspberry Pi 4配置OpenCV4.6.0和ncnn环境(32-bit operation system)
    数据结构之“算法的时间复杂度和空间复杂度”
    数学建模方法-优劣解距离法(TOPSIS法)
    第一章初识微服务
  • 原文地址:https://blog.csdn.net/yokeyhui/article/details/128168153