序列化
2016-06-14 16:40
295 查看
在java中socket传输数据时,数据类型往往比较难选择。可能要考虑带宽、跨语言、版本的兼容等问题。比较常见的做法有两种:一是把对象包装成JSON字符串传输,二是采用java对象的序列化和反序列化。随着Google工具protoBuf的开源,protobuf也是个不错的选择。对JSON,Object Serialize,ProtoBuf 做个对比。
三种方式对比传输同样的数据,google protobuf只有53个字节是最少的。结论:
转自:http://www.iteye.com/topic/1128881
三种方式对比传输同样的数据,google protobuf只有53个字节是最少的。结论:
方式 | 优点 | 缺点 |
JSON | 跨语言、格式清晰一目了然 | 字节数比较大,需要第三方类库 |
Object Serialize | java原生方法不依赖外部类库 | 字节数比较大,不能跨语言 |
Google protobuf | 跨语言、字节数比较少 | 编写.proto配置用protoc工具生成对应的代码 |
相关文章推荐
- cloud 调用列表并返回数据操作代码
- CommonJS AMD CMD UMD区别
- Android的 PackageManager 和ActivityManager的功能介绍
- QT-文件选择对话框的模态与非模态
- RecyclerView:实现带header的grid
- HTML5 History对象,Javascript修改地址栏而不刷新页面
- MySQL使用explain查看执行计划
- Python note1(语言语义)
- sizeof和strlen的区别?
- linux_while及until循环
- MVC及Web API添加身份验证及错误处理的过滤器
- AFNetwoking 3.1 https请求相关
- poj 1017贪心-装箱
- 在32位Windows上扩展虚拟内存(Labview)
- 咏南开发框架调用存储过程演示
- 删除数组中指定的某个元素
- 选中一行并且选中该行的radio
- 图情期刊要求2015(A,B,C类)
- php代码效率测试
- 使用PreTranslateMessage(MSG* pMsg)截获键盘数字键