36.7.2. チェーンクラスター

チェーンクラスターでは、クラスター内の各ノードは、クラスター内の各ノードに直接接続されません。代わりに、ノードは、チェーンを形成します (チェーンの各エンドのノードと他のすべてのノードがチェーンの前と次のノードに接続します)。
この例では、ノード A、B、および C から構成される 3 つのノードチェーンになります。ノード A は 1 つのネットワークでホストされ、多くのプロデューサークライアントが接続され、順序メッセージを送信します。企業のポリシーのため、順序コンシューマークライアントは異なるネットワークでホストする必要があり、そのネットワークには 3 番目のネットワークからのみアクセスできます。このセットアップでは、 B は、プロデューサーまたはコンシューマーが仲介者として機能します。ノード A に到着するすべてのメッセージはノード B に転送されます。ノード B はそれらのメッセージをノード C に転送し、ノード C でメッセージが消費されます。ノード A は直接 C に接続する必要はありませんが、すべてのノードはクラスターの一部として機能できます。
このようにクラスターを設定するために、ノード A がノード B に接続するクラスター接続を定義し、ノード B がノード C に接続するクラスター接続を定義します。この場合、クラスター接続は一方向のみ設定されることが期待されます。これは、メッセージがノード A->B->C でのみ移動し、C->B->A で移動しないためです。
このトポロジーの場合は、max-hops2 に設定します。値が 2 の場合は、ノード C に存在するキューとコンシューマーに関する情報が、ノード C からノード B、そしてノード A に伝播されます。ノード A は、メッセージが到着したときにノード B にメッセージ分散することを認識しています。ノード B にコンシューマー自体がない場合であっても、1 ホップ離れたところにコンシューマーを持つノード C があることを認識しています。