2.8.1 イベントリスナの仕組み
イベントリスナには,次の2種類があります。
- クラスタイベントリスナ
-
EADSサーバがクラスタに追加された場合に実行させるイベントリスナです。
- ノードイベントリスナ
-
EADSサーバの縮退や復旧など,クラスタを構成するEADSサーバの状態が変わった場合に実行させるイベントリスナです。
ノードイベントリスナの実行の契機は,ノードイベントリスナを追加するときに指定できます。
イベントリスナの仕組みを次の図に示します。
クラスタイベントリスナを使用する場合,EADSサーバがクラスタに追加されると,各EADSサーバからEADSクライアントに対してクラスタ構成情報の更新が通知されます。EADSクライアントは,EADSサーバからの通知を受けて,クラスタイベントリスナを実行します。
ノードイベントリスナを使用する場合,EADSサーバの縮退や復旧など,EADSサーバの状態が変わると,各EADSサーバからEADSクライアントに対してクラスタ構成情報の更新が通知されます。EADSクライアントは,EADSサーバからの通知を受けて,ノードイベントリスナを実行します。
- 参考
-
-
EADSサーバとEADSクライアントで通信するため,イベントリスナ用のコネクションが1つ用意されます。このコネクションをクラスタイベントリスナ,およびノードイベントリスナで共用します。
-
クラスタ内のEADSサーバのうち,通信できるすべてのEADSサーバからクラスタ構成情報の変更が通知されます。なお,複数のEADSサーバから同じクラスタ構成情報の変更が通知されても,ノードイベントリスナが実行されるのは1回だけです。
-
イベントリスナを使用する例を次に示します。
-
クラスタに1つ,クラスタイベントリスナを作成する。
-
ノードイベントリスナを実行したいEADSサーバごとに,ノードイベントリスナを作成する。
作成したイベントリスナは,APIを使用してEADSクライアント上に配置します。
- ポイント
-
イベントリスナは次のように動作させることを推奨します。
-
クラスタイベントリスナ,およびノードイベントリスナの両方を使用する。
-
クラスタイベントリスナでは,EADSサーバの追加が通知されたら,追加されたEADSサーバ用のノードイベントリスナを生成する。
-
ノードイベントリスナでは,ノードイベントリスナの実行の契機となるすべてのイベントを処理する。
-