使用jms发送xml有什么好处

use*_*516 0 xml jms

在当前项目中,我们一直使用jms将xml作为textmessage发送.我不明白为什么他们不是简单地发送Objectmessage,为什么有处理xml的开销?

所以问题基本归结为为什么在jms中使用xml?

Mar*_*nor 6

这一切都归结为关于消息序列化格式的设计决策.

起初,Objectmessage似乎是最有效的机制.但是在以下情况下它不能很好地工作:

  1. 消息验证(XML Schema充当消息合同的一种形式)
  2. 发送方和接收方之间软件版本的差异(消息版本控制)
  3. 与非Java系统的通信

用XML序列化消息并不能完全解决这些问题,但某种形式的人类可读消息格式可以实现调试.

最后,XML并不是城里唯一的游戏.JSON作为XML替代品正变得越来越流行.Protocol Buffers是Google的消息传递协议,可以很好地概述一些问题和Google的解决方案.