繁体   English   中英

各种jms提供程序实例之间的负载分配

[英]load distributon between various jms provider instances

生产者<->消费者

在上述情况下,可以说有“ N”个生产者试图在我们的(消费者的)JMS队列中放入很多消息。

我的问题是负载分配如何在JMS环境中特别是在队列中工作。

我认为JNDI在这种情况下提供了足够的间接性,因此所有客户端都只是在查找一些基于JNDI的队列和连接工厂。 任何种类的loadDistributor都可以位于使用者和生产者之间以接收传入的消息。

它如何将这些传入消息分发到JMS提供程序的服务器场(我认为我们需要它们的服务器场来处理传入流量),然后又如何维护多个队列的同步副本..还是让任何消息进入任何队列,然后使用MDB对其进行处理。 但是您如何保证“消息将按照接收到的顺序进行处理”,因为它们全部分布在一堆队列中...

对于这种“高负载”环境,推荐的方法是什么?

队列本质上是“串行”的,其方式是将队列中的每个消息传递到一个接收者。 因此,例如,如果您有2个MBD正在队列中监听,它们将依次接收一条消息,然后再处理下一条。

对于传入的消息,只需将它们一个接一个地放入队列。

我可能不完全了解您要寻找的内容,但是第一手的是,您需要一个JMS提供程序(“消息传递中心”)来公开一个队列,其中多个MDB(可以驻留在不同的主机上)将从中选择消息。 。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM