25.4. サイトへの状態の転送のプッシュ
あるサイトから別のサイトに状態を転送すると、2 つのサイト間でデータが同期されます。
現在アクティブなサイト(最新のデータを含む)から別のサイトに状態を常に転送する必要があります。状態遷移をプッシュするサイトは、オンラインまたはオフラインにすることができます。オフラインサイトに状態遷移をプッシュすると、サイトがオンラインに戻ります。
別のサイトから状態を転送するサイト上のキャッシュは、空にする必要はありません。ただし、状態遷移は受信サイトにある既存の鍵のみを上書きし、キーを削除しません。
たとえば、キー K はサイト A およびサイト B に存在します。サイト A からサイト B に状態を移行します。今回の例では、Red Hat Data Grid はキー K を上書きします。ただし、キー Y はサイト B に存在しますが、サイト A からサイト B に状態を移動した後でもキー Y はサイト B に存在します。
一度に 1 つのサイトからのみ状態遷移を受け取ることができます。同様に、サイトで状態遷移操作を呼び出すと、Red Hat Data Grid はそのサイトの後続の呼び出しを無視します。
以下の JMX MBean から pushState(String) 操作を呼び出して、サイトをオンラインに戻します。
-
XSiteAdminOperationsは、操作を呼び出すサイトとリモートサイト間でキャッシュの状態を同期します。オフラインの場合はそのサイトをオンラインにします。 -
GlobalXSiteAdminOperationsは、操作を呼び出すサイトとリモートサイト間でキャッシュコンテナーの状態を同期します。オフラインの場合はそのサイトをオンラインにします。
転送状態のサイトで pushState(String) 操作を呼び出すと、状態を受け取るサイトの名前を指定します。
以下の図は、JConsole の pushState(String)操作を示しています。
図25.1 JConsole による状態のプッシュ
25.4.1. 参加ノードの処理/ノードの処理 リンクのコピーリンクがクリップボードにコピーされました!
現在の実装は、プロデューサーまたはコンシューマーサイトのトポロジーの変更を自動的に処理します。また、クロスサイトの状態遷移は、ローカルサイトの状態遷移と並行して実行できます。