作为消息载体的XMPP与JMS

作为消息载体的XMPP与JMS,jms,xmpp,agents,agents-jade,Jms,Xmpp,Agents,Agents Jade,我正在考虑使用XMPP或JMS作为软件代理之间交换消息的传输。(我正在使用JADE代理系统。) 我需要解决的主要问题是能够从防火墙后面的代理发送或传递消息。是否有理由考虑XMPP或JMS优于此目的? < P>我们通过防火墙操作一些JMS通信。防火墙的设置取决于JMS提供者,因为JMS不是“有线协议”,而是API。可能存在难以通过防火墙管理的JMS实现。我们使用了JBOSS MQ和SonicMQ,发现它们都没有问题:它们都只需要打开一小部分端口 您应该关注的一个问题是没有消息流量时的行为:大多数实

我正在考虑使用XMPP或JMS作为软件代理之间交换消息的传输。(我正在使用JADE代理系统。)


我需要解决的主要问题是能够从防火墙后面的代理发送或传递消息。是否有理由考虑XMPP或JMS优于此目的?

< P>我们通过防火墙操作一些JMS通信。防火墙的设置取决于JMS提供者,因为JMS不是“有线协议”,而是API。可能存在难以通过防火墙管理的JMS实现。我们使用了JBOSS MQ和SonicMQ,发现它们都没有问题:它们都只需要打开一小部分端口


您应该关注的一个问题是没有消息流量时的行为:大多数实现不交换网络数据,只要不发送消息,大多数防火墙在连接上都有一些超时。这可能会导致防火墙断开连接。我们在这里使用的解决方法是偶尔重新创建连接。

您可能还应该考虑您的平台对JMS和XMPP的支持。例如,在android中,有一个asmack,它提供了良好的XMPP支持,但没有与JMS等效的支持