ActiveMQ 推荐使用ObjectMessage方式而不用TextMessage传输json串

我接触json是在07年的时候,这些年随着rest等概念的流行,json越发的红火起来,眼瞅着有一统天下的架势了。

这些年对json的使用,我越发疑惑一个事情:当server之间异步交互时,有必要用json吗?

正好手里有个项目要用ActiveMQ,做了下测试。

为了体现差距,专门做了个很大的class,使用json转换后大概35MB左右

使用json传输的情况,单位均为ms:

总时间:17366  

传输时间:220

发送者把object转为json的时间:6271

发送总共时间:10000

接收者把message转换为textMessage时间:0

接收者把json转换为object时间:7146。

****************************************

使用ObjectMessage进行传输的情况:

总时间:6742

传输时间:173

发送总时间:4836

接收者把message转换为ObjectMessage时间:1733

******************************************

结论

  虽然没做压力测试,虽然只测了一次,虽然测试环境仅仅是我的笔记本,但我想我已经可以做出结论了。

  在server之间的异步通信时,object优于json。

  优势主要集中于java序列化和对象之间转换的效率远高于json盒对象转换的效率,另外序列化后对象的大小比json的小也是有利传输的原因。

 

对了,json转换用的是jsonlib,很久没关心json的性能了,不知有没有更高效的转换工具。

转载于:https://www.cnblogs.com/worldpasser/p/3245445.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值