【问题标题】:What is the best practice with JMS Servers? Should it be deployed on Consumer or Producer side?JMS 服务器的最佳实践是什么?它应该部署在消费者端还是生产者端?
【发布时间】:2013-03-22 03:28:29
【问题描述】:
从架构的角度来看,我想知道在具有 2 个应用程序和 OSB 作为中间件的集成场景中,最佳实践是什么:JMS 消费者在 JBoss 上运行,而 OSB 应用程序封装了一个服务提供者。 JMS 队列应该驻留在 JBoss(外部服务器)还是 WebLogic Server 上?也就是说,如果我可以选择,JMS 服务器应该在消费者端还是生产者端?有什么好处和坏处?
提前致谢。
【问题讨论】:
标签:
jboss
jms
weblogic
integration
message-queue
【解决方案1】:
这取决于你的需要,你可以在你的 web 逻辑服务器中创建一个外部目的地,连接到生产者端的生产者队列。在这种安排下,您的消费者将在连接到生产者队列的外部目的地的本地端进行侦听。
我能想到以下好处:
A> 外部目标映射到 WebLogic JNDI 树,部署到服务器的任何 MDB 都可以使用其本地 JNDI 名称简单地引用远程目标。
B> 由于您直接与远程资源通信,因此在交付等方面没有延迟/延迟。
C> 一个问题可能是您将无法在消费端生成消息,因为该用户可能没有对队列的入队访问权限。但这一切都取决于您的设置。这可能在某些情况下需要,例如测试等。