2


3 台目のマシンで実行されている同じ activemq キューをリッスンする 10 個のコンシューマーを持つ 2 台のマシンをそれぞれ構成しました。

activemq Web コンソールで 20 のコンシューマーを期待していますが、10 しか表示されませんでした。
何が問題なのですか? アプリケーション側または activemq 側で構成の変更はありますか?

spring-jms(org.springframework.jms.listener.DefaultMessageListenerContainer) と activemq 5.8.0 を使用しています

更新:
トピックは私にとってオプションではありません。1 人の消費者だけが 1 つのメッセージを読むようにしたい。
次のシナリオがあります: machine1 = activemq
machine2 = consumer1 から consumer10
machine3 = consumer11 から consumer20

私が観察したのは、machine2 の消費者のみがキューからメッセージをポップアウトして
いることです。必要なのは、machine2 と machine3 の両方の消費者がメッセージを読む必要があることです。


前もって感謝します。

4

2 に答える 2

1

必要なのはメッセージ キューではなく、メッセージ トピックのようです。主な違いは、キューが電子メール アカウントに似ていることです。メッセージを読むと、メッセージは消えます。おそらく同じキューを共有しているため、アクティブなクライアントが 1 つしかないように見えるのはそのためです。

一方、メッセージ トピックは、メッセージがトピックに送信されるとすぐに、接続されているすべてのクライアントにメッセージを配信します。

于 2013-11-12T10:55:29.333 に答える
-1
  • machine2 のコンシューマーをオフにして、メッセージが machine3 のコンシューマーによって消費されるかどうかを確認できますか?

  • machine3 からの接続方法の構成を提供できますか?

于 2013-11-20T12:58:35.510 に答える