同一MQ JMS队列的多个JMS使用者是否能保证负载平衡?

同一MQ JMS队列的多个JMS使用者是否能保证负载平衡?,jms,ibm-mq,Jms,Ibm Mq,我们有一个IBM MQ JMS队列,希望将数据分发到多个使用者中以实现负载平衡。所以,如果我们编写两个JMS客户机来使用同一JMS队列,会发生什么?由于一个消费者在读取数据后会删除数据,消息是否会在两个消费者之间平均分布?是否存在数据重复的可能性,例如,在竞争条件下,两个消费者读取相同的消息 我下面的评论是基于破坏性获取,而不是浏览获取 所以,如果我们编写两个JMS客户机从同一个JMS队列消费什么 会发生什么 它们都将使用消息 消息是否会在两个消费者之间平均分布 消费者将在读取数据后删除数据 不

我们有一个IBM MQ JMS队列,希望将数据分发到多个使用者中以实现负载平衡。所以,如果我们编写两个JMS客户机来使用同一JMS队列,会发生什么?由于一个消费者在读取数据后会删除数据,消息是否会在两个消费者之间平均分布?是否存在数据重复的可能性,例如,在竞争条件下,两个消费者读取相同的消息

我下面的评论是基于破坏性获取,而不是浏览获取

所以,如果我们编写两个JMS客户机从同一个JMS队列消费什么 会发生什么

它们都将使用消息

消息是否会在两个消费者之间平均分布 消费者将在读取数据后删除数据

不会。假定“热门”消费者在下一条消息到达之前再次“收到”消息,则该消费者将收到下一条可用消息

是否存在重复数据的可能性,例如如果相同的消息 在竞态条件下,两个消费者都能读取吗


如果您正在执行破坏性获取(默认设置),则不会执行此操作。

我下面的评论基于破坏性获取,而不是浏览获取

所以,如果我们编写两个JMS客户机从同一个JMS队列消费什么 会发生什么

它们都将使用消息

消息是否会在两个消费者之间平均分布 消费者将在读取数据后删除数据

不会。假定“热门”消费者在下一条消息到达之前再次“收到”消息,则该消费者将收到下一条可用消息

是否存在重复数据的可能性,例如如果相同的消息 在竞态条件下,两个消费者都能读取吗


如果您正在执行破坏性get(默认设置),则不会这样做。

如果有两个客户端连接到同一队列执行破坏性get,那么可以保证消息仅由一个使用者读取,而不是由两个使用者读取?我只是想确保同一消息不会被两个使用者读取。比如说,如果我有两个客户端连接到同一个队列执行破坏性get,那么可以保证一条消息只被其中一个使用者读取,而不是同时被两个使用者读取?只是想确保两个消费者不会读到相同的信息。