簡體   English   中英

JMS主題在隊列偵聽器中接收

[英]JMS topic receive in a Queue listener

我對JMS有疑問。 我一直在檢查一些博客,其中展示了隊列偵聽器如何接收正在發送的主題消息。 據我所知,甚至只有可能,訂閱特定主題的客戶端才能收到發布的消息。

問候。

因此,給定發布主題,您想使用隊列中的消息。 我假設您使用ActiveMQ,因為您添加了該標簽。

進行此設置的主要原因是能夠負載均衡使用者的多個群集節點。 普通的持久訂閱在JMS 1.x中不允許這樣做。 我想你的案子也差不多。

  • 在通用JMS中,這是不可能的。 但是,在JMS 2.0中,持久訂閱可以實現負載均衡,因此工作有點像隊列。 並非所有的JMS代理都實現JMS 2.0。 ActiveMQ不實現JMS 2.0,但ActiveMQ Artemis實現。

  • ActiveMQ通過稱為虛擬主題的概念允許這樣做。 使用虛擬主題,您可以給主題指定一個名稱,例如VirtualTopic.MyTopic會將所有已發布的消息轉發到與Consumer.MyConsumer.VirtualTopic.MyTopic匹配的任何已創建隊列。

示例主題名稱:

  • VirtualTopic.GameScores

隊列名稱示例:

  • Consumer.ScoreBoardService.VirtualTopic.GameScores
  • Consumer.BettingService.VirtualTopic.GameScores

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM