网络传输中的编解码技术 - 个人总结

1、首先,就是Java序列化机制,好处是:基于JDK默认的序列化机制可以避免操作底层的字节数组,从而提升开发效率;其目的主要有两个:网络传输、对象持久化;

但是,对于网络传输来说,Java序列化机制有种种缺陷

【1】无法跨语言:

【2】序列化后的码流太大:

自己编写一个User类(这里就不贴代码了),

然后分别对其实现:序列化、以及ByteBuffer对其进行编码,

然后对两者码流大小进行比较:采用JDK序列化机制编码后的二进制数组大小是二进制编码的5.29倍;

【3】序列化性能太低:

对【2】中的示例场景,分别对Java序列化和二进制编码进行性能测试,发现Java序列化的性能只有二进制编码的6.17%左右:

2、使用主流常用的编码器:

如:MessagePack、ProtoBuf、Marshalling

Netty与以上三个分别的结合使用,相关代码之后会补充;

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值