JMS协议是文本或二进制文件

时间:2012-02-10 09:26:06

标签: java jms protocols

我想知道什么是JMS协议?它是像http或二进制的文本基础协议? 这些协议的层次结构是什么? (RMI> JMS或......)

如果您向我介绍学习这些协议层次结构的好参考,我将感谢您。

RGDS

4 个答案:

答案 0 :(得分:9)

JMS是api规范,它没有定义任何有关底层协议的内容。

我认为大多数JMS服务器实现都使用二进制协议,EMS是我最常见的经验。

最佳起点是here

上的文档

AMQP是一种消息传递标准,它确实定义了有线协议,它是二进制的。

答案 1 :(得分:5)

JMS不是协议。这是一个规范。许多MOM供应商实现此规范并提供用于消息传递的API。 JMS实现是特定于供应商的。首先要了解JMS规范,然后选择您的JMS提供程序。

答案 2 :(得分:2)

JMS消息可以是BytesMessage,而JMS消息的主体是二进制数据。 JMS消息也可以是TextMessage,而JMS消息的主体是字符串数据。

JMS在JMS Provider实现上完全依赖。 您必须首先熟悉abstract specification,而不是根据您将要使用的JMS Vendor impl查找文档。大多数供应商都遵循该规范,但也扩展了它。我会说ActiveMQHornetQ是最受欢迎的免费许可证消息代理。这是JMS上的starting tutorial,但是如果您已经选择了特定的供应商,那么最好按照他们的首发文档进行操作。

答案 3 :(得分:-1)

它的任何一个 - 实际上JMS有两种特定的消息类型来覆盖这些情况。

我从wiki开始 - http://en.wikipedia.org/wiki/Java_Message_Service

然后看看http://docs.oracle.com/javaee/1.3/jms/tutorial/