HTTP到JMS桥

Chr*_*ott 3 soa esb jms http

概观

我想将一个消息队列暴露给互联网,以便客户端应用程序可以与我们的一些后端服务进行通信.

由于安全原因,我不想直接公开jms端点.此外,普通的HTTP传输可以避免将jms插件分发到异构客户端应用程序(.net,java,javascript)的需要.

研究成果

ActiveMQ的

我看了一下ActiveMQ的"内置"REST接口:

http://activemq.apache.org/rest.html

但在测试中,我发现该演示不可靠(即"我的消息在哪里?").此外,关于如何将演示拉入"真正的"实现,没有详细记录.

ESB

由于这听起来像企业集成模式中的经典"桥"模式,我看了主要的开源ESB/SOA集成引擎:

  • Spring集成
  • 马骡
  • ServiceMix的

在这三个中,最清晰的文档似乎是ServiceMix,它提供了一个In-only消息模式,我需要POST和GET消息.

不幸的是,对于评估条款,我似乎不得不深入研究每个实现和配置.我意识到开箱即用的设置可能太多了,但我宁愿不学习所有这三个,只考虑哪一个最符合我的需求.所以...

问题

  • 你有没有实现类似的架构?你用了什么?
  • 无论您现在建议的第一个答案是什么?
  • 哪个最简单?

ScA*_*er2 5

你总是可以查看Apache Camel项目.它允许您将来自Http,Web服务等的请求公开并路由到JMS队列.

虽然我投票支持威尔的答案.servlet真的是去这里的方式.