2017-12-10 8 views
1

ここではclustered-durable-subscriptionという例です。ここではclustered-static-discoveryです.1つのサーバー(クラスタ構成を使用して別のサーバーに自動接続)で接続するクラスタ・スタティック・ディスカバリ。ドキュメントごとのよう はApache Artemis:スタティック・クラスタの永続サブスクリプションを作成するにはどうすれば

通常、耐久性のあるサブスクリプションは、単一ノード上に存在し、ActiveMQのアルテミス で、しかし、任意の一時点で1人の加入者を持つだけ ことができ、それは同じ 名とクライアントとの永続サブスクリプションのインスタンスを作成することが可能ですクラスタの異なるノードに-idを付け、同時に を消費します。これは 耐久性のあるサブスクリプションからのメッセージの処理の作業がJMSキューが

iは、静的クラスタのための追加設定を追加する必要がある場合、クラスタ間で負荷分散することができますどのようにと同様 方法でクラスタ全体に広がることを可能にします、または耐久性のあるサブスクリプションは、すべてのノードのクライアントIDとサブスクリプションを設定せずにスタティッククラスタで正常に動作します(スタティッククラスタでは1つのノードとのみ接続します)

答えて

1

" clustered-static-discovery "は実際にクラスタノードの発見(名前が示唆しているように)を指しています。クラスタノードが発見され、クラスタが形成されると、クラスタは、発見が動的である(例えば、UDPマルチキャストを使用する)場合と同じように動作する。言い換えると、クラスター化された永続サブスクリプションは、クラスター・ノードのディスカバリーのためにサーバー側でどのようなメカニズムが使用されても、同じように動作するはずです。

+0

ジャスティン 4つの接続すべてに対して同じクライアントIDを設定している場合、静的クラスタ静的検出では、例外が発生します。「javax.jms.InvalidClientIDException:clientID = my-client-idは既に別のクライアントIDに設定されています接続 '' ' どのように私たちはすべての接続のための共通のIDを共有することができます。 – Baba

+0

https://github.com/jbertram/activemq-artemis/tree/clustered-durable-subscription-static-discovery/examples/features/clustered/clustered-static-discoveryをご覧ください。永続サブスクリプションを使用するようにclustered-static-discoveryの例を変更しました。それを実行すると、それが動作することがわかります。接続時に同じクライアントIDとサブスクリプション名を設定する場合は、まだサブスクライバが接続されていないノードに接続する必要があります。 –

+0

おかげでJustin Bertram – Baba

関連する問題