Sun Java System Message Queue 3.7 UR1 技術の概要

クラスタのアーキテクチャー

図 4–1 に、ブローカクラスタの Message Queue のアーキテクチャーを示します。1 つのクラスタ内のブローカそれぞれは、他のすべてのブローカと直接接続されています。各クライアント (メッセージプロデューサまたはコンシューマ) には 1 つのホームブローカがあります。クライアントは、ホームブローカに直接通信し、そのブローカがクラスタ内の唯一のブローカであるかのようにメッセージを送受信します。背後では、そのホームブローカが他のブローカと協調動作し、接続されたすべてのクライアントに配信サービスを提供します。

クラスタ内では、サービスの可用性は送信先と永続サブスクライバに関する情報を共有できるブローカによって異なります。クラスタ化されたブローカに障害が発生した場合、この状態情報が同期されなくなる可能性があります。この危険性に対処するために、クラスタ内の 1 つのブローカをマスターブローカとして指定することができます。マスターブローカは、設定変更レコードを保持し、クラスタの持続エンティティー (送信先と永続サブスクリプション) への変更点を追跡します。このレコードを使用して、変更が加えられたときにオフラインだったブローカに変更情報を伝えます。

図 4–1 クラスタのアーキテクチャー

図は、クラスタ化された 3 つのブローカを示す。そのうち 1 つはマスターブローカを示す。図は文字で説明される。

以降の節では、クラスタ内でメッセージ配信が実行される仕組み、および 1 つまたは複数のブローカがオフラインになっていてもブローカを設定および同期する方法について説明します。