在node.js应用程序中接收JMS消息?

use*_*425 4 javascript jms node.js

是否可以订阅JMS,并从node.js应用程序中接收消息?是否有一个node.js模块允许这个,就像amqp消息的amqp模块一样?

目前,Java应用程序接收消息.但是,我正在尝试切换到javascript.

谢谢

Pet*_*der 12

简答:不.

更长的答案:JMS只不过是Java中的API接口规范.没有Java,你无法真正使用JMS.因此,要使用通用JMS(任何供应商),您需要在JMS实现和JavaScript(node.js)应用程序之间使用一些Java粘合代码(例如seam,或更自定义的东西).

另一方面,AMQP不仅仅是一个API.它实际上是一种标准化的线路协议,因此可以用任何语言实现.JMS没有这种奢侈品.

也就是说,如果您选择与特定供应商合作,可能会有一些选择.

我不知道Apache ActiveMQ是否支持AJAX,对于IBM WebSphere MQ和JBoss HornetQ(http://www.jboss.org/hornetq/rest.html)也是如此(至少部分地).

除REST/AJAX之外的其他选项是尝试实现或查找不同JMS供应商使用的不同Wire protcols的实现.对于支持AMQP的Apache QPid,这很容易.STOMP是另一个由多个JMS实现支持的轻量级协议,例如ActiveMQ和HornetQ,您可以在Internet上找到node.js/java脚本库.

更耗时的选择是使用特定的实现C/C++ API(如果有的话)编写node.js的扩展并使用它进行连接.它(可能)比REST/AJAX方法更可靠,但也更省时