如何查找JMS主题的所有订阅者都回复了?

Arj*_*jms 5 java messaging jms

使用HornetQ(在JBoss AS 6.0中)我想设置一个JMS主题,多个客户端可以订阅.

制作人定期向该主题发送带有回复目的地的消息,所有订阅者都应该回复该目的地.

我遇到的问题是,我不完全确定如何检查所有订阅者确实已回复.

一种解决方案可能是每个订户在订阅后首先向主题发送消息及其详细信息(可能是一些GUID).生产者记住这些细节,并用它来检查所有订阅的客户是否已经回复.

然而,我不想自己发明轮子,而是想使用已经存在的东西.这似乎是一个标准问题,但我找不到任何现有的解决方案.

cro*_*wne 1

您可以使用持久订阅,然后查询订阅和消息。
请参阅http://hornetq.sourceforge.net/docs/hornetq-2.0.0.BETA5/user-manual/en/html/management.html#d0e5742

请注意,使用持久订阅和持久消息会导致性能损失。您必须根据您的具体需求来衡量性能影响的严重程度。