gpt4 book ai didi

虚拟主题的 ActiveMQ 消息组

转载 作者:行者123 更新时间:2023-12-04 06:07:10 25 4
gpt4 key购买 nike

我知道这个话题是为了向客户广播消息。但是在 ActiveMQ 文档中,它说的是负载平衡:

Another way of explaining Message Groups is that it provides sticky load balancing of messages across consumers; where the JMSXGroupID is kinda like a HTTP session ID or cookie value and the message broker is acting like a HTTP load balancer.



我不明白的事情来了。

不是广播吗?

我想做的是以下:
如果生产者向 A 组发送消息,则代理以某种方式控制流量,消息“物理地”不应该进入 B 组。

虚拟主题甚至可能吗?

最佳答案

VirtualTopics 为每个主题订阅者创建队列并将消息复制到每个订阅者,因此它将所有消息“广播”给所有订阅者。

ActiveMQ 消息组为您提供给定消息组(不同的 JMSXGroupID)的独占消费者线程。您无法控制哪个消费者拿起每个组,并且同一个消费者线程可以处理多个组。

据我所知,如果您在发送到 VirtualTopic 的消息上设置 JMSXGroupID,它将到达每个订阅者的虚拟队列。但是,如果您有来自这些队列的多个线程处理(maxConcurrentConsumers > 1),那么它们将是每个消息组的单线程,等等。

总的来说,如果您希望某些订阅者只处理发送到某个主题的消息的子集,请使用 message selectors向下选择这个子集。

关于虚拟主题的 ActiveMQ 消息组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8219318/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com