在Dubbo中使用高效的Java序列化(Kryo和FST)

http://dubbo.apache.org/zh-cn/docs/user/demos/serialization.html

// RPC框架

1. Dubbo 序列化,未开发成熟   

2. hessian2 , Thrift 之前使用的,是一种跨语言的高效二进制序列化方式

3. json序列化:目前两种,一种是阿里的 fastjson 库,另一种是采用 dubbo 中自己实现的简单 json 库,建议使用 jkson

4. Java序列化:主要采用JDK自带的Java序列化实现,性能很不理想

针对Java语言的:Kryo, FST等等    Kryo是一种非常成熟的序列化实现,已经在TwitterGrouponYahoo以及多个著名开源项目(如HiveStorm)中广泛使用.FST则较新,缺乏足够多的成熟案例

跨语言的:Protostuff, ProtoBuf, Thrift, Avro, MsgPack等等

这些序列化方式的性能多数都显著优于 hessian2(甚至包括尚未成熟的dubbo序列化)

增加 Kryo 依赖

<dependency>
    <groupId>de.javakaffee</groupId>
    <artificatId>kryo-serializers</artifactId>
</dependency>

增加配置.yml(xml替换为yml配置方式)

dubbo.protocol.serialization.kryo  // 协议中添加序列化的方式

dubbo.protocol.optimizer.(注:替换为自己的实现类)

原文地址:https://www.cnblogs.com/cgy-home/p/12016253.html