[Coherence] One Client Two Clusters
Minggu, 15 September 2013
0
komentar
https://blogs.oracle.com/felcey/entry/one_client_two_clusters
一つのクライアントが複数のクラスタに接続したほうがよい場合があります。それはデータが離散しているためであったり、例えばクラスタが高可用性を担保するため異なる場所に配置されていたりするためであったりします。TCP通信でプロキシサービスを介しCoherenceクラスタに接続するCoherence拡張クライアントや外部クライアントにとって、これは非常に単純です。このエントリではこの方式の実現方法を説明し、ご自身でも試して頂けるような簡単なサンプルを用意しました。この構成のアーキテクチャは以下のようになっています。
クライアントが同じ環境に共存しない場合には、Coherence*Extendの構成が望ましいでしょう。これはCoherence*Extendの性能がクラスタに影響を与えず、接続・切断時にはデータの復旧やリバランスされず、クラスタメンバーは変化しないからです。
複数のクラスタに接続するクライアントを構成、拡張するには、各クラスタ用の別のキャッシュ構成ファイルを定義するだけでよいのです。ここで各構成ファイルにはキャッシュ名からクラスタのリモートアドレスが引けるようなマッピングが記載されています。これを使うと、複数のクラスタに対し同じキャッシュ名を持たせることができます。このリモートクラスタ構成の一意の要素例を以下に示します。
各リモートクラスタのサービス名は一意である必要があります。ただし、リモートスキーム名が同じでもかまいません。リモートアドレスもまた明らかに各クラスタで異なっています。
各キャッシュ構成ファイルを別の
ConfigurableCacheFactory
がロードします。そのため、各クラスタにはそれぞれのConfigurableCacheFactory
があります。このConfigurableCacheFactory
を使って当該クラスタのNamedCache
を開始します。ここで完全に他のクラスタのNamedCache
から分離します。別々のNamedCache
を異なるConfiguratbleCacheFactory
を使用して作成する方法のサンプルを以下でご紹介します。POFを使っている場合は、クライアントおよび各クラスタには同じシリアライゼーション情報を含める必要がありますが、これは非常に簡単です。
最後に、2個の別のクラスタと接続し、やりとりするところをただ今説明しましたが、12個以上のクラスタであっても、クライアントがJava以外の.NETやC++クライアントであっても同じです。
Coherenceを利用するソリューションの構築にあたり追加の選択肢として、このエントリがお役に立つことを願っています。この方法を試したい方は、簡単な1クライアントー2クラスタのJavaのサンプルを用意しましたのでお試し下さい。
TERIMA KASIH ATAS KUNJUNGAN SAUDARA
Judul: [Coherence] One Client Two Clusters
Ditulis oleh Unknown
Rating Blog 5 dari 5
Semoga artikel ini bermanfaat bagi saudara. Jika ingin mengutip, baik itu sebagian atau keseluruhan dari isi artikel ini harap menyertakan link dofollow ke http://apk-zipalign.blogspot.com/2013/09/coherence-one-client-two-clusters.html. Terima kasih sudah singgah membaca artikel ini.Ditulis oleh Unknown
Rating Blog 5 dari 5
0 komentar:
Posting Komentar