Spring JMS:创建到队列的多个连接

时间:2011-03-09 23:55:18

标签: spring jms

要处理大量进入队列的消息,我需要保证在任何时候至少有一个jms连接。我使用spring和spring只允许在单个连接上进行多个会话。如果一个且唯一的连接失败,应用程序将停止,直到spring重新连接到JMS桥。

那么如何在Spring中创建一个到队列的多个连接,以及如何在这里进行连接池。

1 个答案:

答案 0 :(得分:3)

答案取决于您是在J2EE容器(jboss等)中使用Spring还是在独立应用程序中使用Spring。

独立 - 您会发现池连接成为问题。 Springs SingleConnectionFactory可以设置为在异常时更新连接,以便在某个时刻连接将联机并再次开始处理队列,但是您仍然会遇到等待单个连接续订的问题,并且依赖于在您处理的消息传递实现以及它如何进行负载平衡时,您可能会发现自己陷入了与群集中单个节点的连接。

如果您在容器中运行,您可以依赖容器连接工厂,这将更加强大。例如,容器中的JBoss Messaging将无缝地故障转移到其他节点并处理封底下的池,但是如果您在容器中工作,它通常更容易在JMS模板上保释哪种类型很糟糕并使用容器提供的任何内容。