2016-07-18 7 views
0

ヘイルキャストの延長に関するドキュメントを読んだことがあります。http://docs.hazelcast.org/docs/3.6/manual/html-single/index.html#extending-hazelcast私はほぼ同じことをやっています。 残念ながら、このドキュメントでは、CounterServiceへのアクセス権を持ち、プロキシインスタンスを取得できるメンバーアプリケーションからの接続方法を示しています。ヘビキャストtcpクライアント(spi経由での拡張サービス)

TCPを介してHCクラスタの外部からCounterServiceと対話できるクライアントを作成しようとしています。誰でも私がそれについてもっと読むことができる場所を教えてもらえますか? このような対話がマニュアルに記載されていない理由はありますか?

これは何とかJavaネイティブクライアントを設定するのと同じくらい簡単ですか? 私は少し混乱しています、おかげさまで助けてください。

答えて

0

これはまさに必要なものです。 Java Native Clientを設定する必要があります。その構成はHAzelcastのWebサイトでよく説明されており、Hazelcastサーバーの構成にも非常によく似ています。あなたはそれを設定するために必要なもの、これは

http://docs.hazelcast.org/docs/3.6.2/manual/html-single/index.html#hazelcast-java-client

多かれ少なかれ:

ClientConfig clientConfig = new ClientConfig(); 
clientConfig.getGroupConfig().setName("dev").setPassword("dev-pass"); 
clientConfig.getNetworkConfig().addAddress("10.90.0.1", "10.90.0.2:5702"); 

あなたはHazelcastInstance(クライアント1)のインスタンスを取得したら。私はあなたがまだあなたのサービスのプロキシと操作を定義していないことを確認あなたのコメントに基づいて

instance.getDistributedObject(CounterService.NAME, k+"counter") 

を:あなたは使用して、分散オブジェクトにハンドラを取得することができます。その一方、私はhazelcastのグループに同じ質問をし、最初の彼らはトピックに関する欠落しているドキュメントを追加しようとします

http://docs.hazelcast.org/docs/3.5/manual/html/spiproxy.html

+0

OKですが、あなたはその後、私のカウンターサービスを公開しているAPIを使用することができますか? (ドキュメンテーションCounterにはinc()メソッドがあります)。それでも私はこれらの2つの部分をどのように接続するのかがわかりません。 – kamiseq

+0

あなたは4つのものが必要です。 1サービス - 私はあなたがすでにそれを持っていると信じています。 2.サービスへのローカルゲートウェイとして機能するプロキシが必要です。このプロキシは、サービス内のcreateDistributedObjectメソッド内から作成する必要があります。 3. AbstractOperation 3を拡張する操作を定義する必要があります。クライアントコードが必要です。このコードは私の答えの中にあります。 instance.getDistributedObject(CounterService.NAME、k + "counter")を使用してクライアントからDistributedオブジェクトを取得したら、それを –

+0

にキャストすることができます。私はテストインフラストラクチャを設定しており、これを記述している方法で動作することを確認します。取得されたプロキシが実際にリモートサービスで操作できるものであれば、実行時検証は行われません。 – kamiseq

0

:追加のヘルプが必要な場合は、次のマニュアルをよく読み、あなたのコードを投稿してください。第二に、独自のインターフェイスからクライアントジェネレータを使用する必要があります。ここ

はリンクhttps://groups.google.com/forum/#!topic/hazelcast/QS1UovGLOhQ

関連する問題