java - 针对特定属性组同步处理 jms 消息,但在其他组中同时处理 jms 消息

标签 java spring jms activemq

我需要有关 JMS 队列和消息处理的帮助。

我有一个场景,需要针对特定​​属性组同步处理消息,但可以在不同属性组之间同时处理消息。

我了解了特定于每个属性的消息组和队列的一些知识。我的想法是,我想针对某个属性组进行同步处理,并且可能有 7000 个或更多这样的属性组。

我绝对不能拥有 7000 个队列。请提供任何建议。

谢谢

最佳答案

ActiveMQ 中队列和消息组的概念将达到此目的。

每个传入的 jms 消息都应设置 header “JMSXGroupID”。的值(value) header 应特定于该组。

现在,并发消费者可以监听队列了。 ActiveMQ 将确保具有相同组 header 值的消息将发送给同一个消费者。

引用:http://activemq.apache.org/message-groups.html

谢谢。

关于java - 针对特定属性组同步处理 jms 消息,但在其他组中同时处理 jms 消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48795986/

相关文章:

java - 使用 OpenCV 在 Android 上显示图像

java - 在 ExecutorService 中使用同步块(synchronized block)

Java 进程在 GC 之前停止

java - 我怎样才能让我的程序检查一个单词是否是回文,无论用户输入的大小写如何

spring - 无法使用 Spring Security 评估表达式

java - 如何测量 Spring Web 应用程序中的组件启动时间?

java - JMS 消息确认超时?

java - 如果 ActiveMQ 代理关闭,如何通知客户端?

java - 消息传递(例如 JMS)何时可以替代多线程?

spring - 在没有 Spring Boot 的情况下设置内存中的 H2 数据库