第3章 Data Grid Server エンドポイントの設定
Data Grid サーバーは、リモートクライアントアプリケーションからのリクエストを処理するリスナーエンドポイントを提供します。
3.1. Data Grid のエンドポイント
Data Grid エンドポイントは、異なるコネクタープロトコルで CacheManager
インターフェイスを公開し、データをリモートでアクセスし、Data Grid クラスターを管理および維持するための操作を実行することができます。
異なるソケットバインディングで複数のエンドポイントコネクターを定義できます。
3.1.1. Hot Rod
Hot Rod は、テキストベースのプロトコルと比較して、データへのアクセス時間を短縮し、パフォーマンスを向上するために設計されたバイナリー TCP クライアントサーバープロトコルです。
Data Grid は、Java、C++、C#、Node.js、およびその他のプログラミング言語で Hot Rod クライアントライブラリーを提供します。
トポロジーの状態遷移
Data Grid はトポロジーキャッシュを使用して、クライアントにクラスタービューを提供します。トポロジーキャッシュには、内部 JGroups トランスポートアドレスを公開された Hot Rod エンドポイントにマッピングするエントリーが含まれます。
クライアントが要求を送信すると、Data Grid サーバーは、要求ヘッダーのトポロジー ID をキャッシュからのトポロジー ID と比較します。クライアントに古いトポロジー ID がある場合は、Data Grid サーバーは新しいトポロジービューを送信します。
クラスタートポロジービューを使用すると、Hot Rod クライアントは、ノードがいつ参加および離脱するかを即座に検出できるため、動的な負荷分散とフェイルオーバーが可能になります。
分散キャッシュモードでは、一貫性のあるハッシュアルゴリズムにより、Hot Rod クライアント要求をプライマリー所有者に直接ルーティングすることもできます。
3.1.2. REST
参照資料
Data Grid は、HTTP クライアントがデータにアクセスし、クラスターを監視および保守し、管理操作を実行できるようにする RESTful インターフェイスを公開します。
標準の HTTP ロードバランサーを使用して、クライアントに負荷分散およびフェイルオーバー機能を提供できます。ただし、HTTP ロードバランサーは静的クラスタービューを維持し、クラスタートポロジーの変更が発生したときに手動で更新する必要があります。
3.1.3. プロトコルの比較
Hot Rod | HTTP / REST | |
---|---|---|
トポロジー対応 | Y | N |
ハッシュ対応 | Y | N |
暗号化 | Y | Y |
認証 | Y | Y |
条件付き操作 | Y | Y |
バルク操作 | Y | N |
トランザクション | Y | N |
リスナー | Y | N |
Query | Y | Y |
実行 | Y | N |
クロスサイトフェイルオーバー | Y | N |