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

クラスタの同期化

クラスタの設定が変更されると、変更に関する情報がクラスタ内のすべてのブローカに自動的に伝播されます。次のいずれかのイベントが発生した場合、クラスタの設定が変更されます。

こうした変更の情報は、変更が行われたときにオンラインになっている、クラスタ内のすべてのブローカに即座に伝播されます。ただし、クラッシュなどのためにオフラインになっているブローカは、変更が生じたときに変更の通知を受け取りません。オフラインブローカに対処するため、Message Queue はクラスタの設定変更記録設定変更記録を保持し、作成または破棄されたすべての持続エントリ (送信先および永続サブスクリプション) を記録します。オフラインからオンラインに戻ったブローカや、クラスタに新しく追加されたブローカは、この記録を参照して送信先および永続サブスクライバに関する情報を調べ、現在アクティブなメッセージコンシューマに関して他のブローカと情報を交換します。

クラスタ内でマスターブローカに指定された 1 つのブローカは、設定変更記録を保守する役割を担います。他のブローカはマスターブローカなしで初期化を完了できないので、マスターブローカはクラスタ内で必ず最初に起動してください。マスターブローカがオフラインになると、他のブローカが設定変更記録にアクセスできないので、設定情報をクラスタ内全体に伝播できなくなります。このような状況では、送信先または永続サブスクリプションを作成、再設定、または破棄しようとしたり、永続サブスクリプションの再有効化のような関連性のある操作を実行しようとしたりすると、例外が生じます。ただし、非管理メッセージ配信は、通常どおり動作を続けます。マスターブローカと設定変更記録の使用はオプションです。これらが必要になるのは、クラスタの設定を変更したあとまたはブローカの障害が発生したあとにクラスタの同期化を行う場合のみです。