2012-03-02 12 views
0

IPアドレスを追加して接続すると、クライアントはすべてのサーバーの使用可能なIPアドレスを取得しますか?Membase?これはどのように作動しますか?

クライアントが少なくとも2つのIPアドレスを知っている必要がありますか?

これは私が1つのIPアドレスのみを追加した場合は、と私は取得し、設定操作をしていたし、サーバーがダウンしている間、私は(JAVA)

List addrList = new ArrayList(); 
addrList.add("192.168.20.105:11211"); 
addrList.add("192.168.20.106:11211"); 
addrList.add("192.168.20.101:11211"); 

try { 

List addr = AddrUtil.getAddresses(addrList); 
mbsClnt = new MemcachedClient (new BinaryConnectionFactory() , addr); 

でテストしてきたコードです。 クライアントは利用可能な他のサーバーに接続できますか? これは、接続障害を避けるためにできるだけ多くのIPアドレスを追加する必要があることを意味しますか? これは、オブザーバーを追加して使用可能なサーバーを表示すると表示されません。

もう1つの質問は、IPアドレスを追加すると特定のvBucketにリンクされているPORT番号を入れなければならないことです。すべてのクライアントが同じvbucketを見せてしまうことからオーバーフローが生じますか?もしそうなら、私はどのように異なるvBucketsを見るためにクライアントとのバランスを取るべきですか?

私の英語が本当にあなたに届いていない場合は申し訳ありません。

どのようなアドバイスや回答がありがとうございます。ありがとう!

答えて

0

ここでの問題は、MemcachedClientでmemcachedコンストラクタを使用していることです。 2.7.x以下では、URI、バケット名、およびパスワードのリストを取得するコンストラクタを使用します。そのコンストラクタはMembase/Couchbaseノードに接続し、クラスタ内のすべてのサーバのリストを取得します。次に、ノードを再調整またはフェールオーバーする場合、Spymemcachedは正しいことを行い、新しいノードに接続するか、クラスタを離れるノードへの接続を切断します。

Spymemcached 2.8.x以降では、この機能を実際に削除して、Couchbase Clientという新しいプロジェクトに配置しました。そのプロジェクトでは、上記のコンストラクタだけが見つかります。これは、あなたがすべきことをより明確にするはずです。 Couchbase Client 1.0.1は現在ビューのサポートを持っていませんが、それは次のリリースで追加されます。また、Couchbase ClientはMembaseのすべてのバージョンと互換性があります。

他にもう1つ。クラスタ内のすべてのノードのリストを取得するには、URIを1つだけ指定する必要がありますが、クラスタ内にあるサーバと同じ数のURIを追加することをお勧めします。これは、URIで指定したノードが停止した場合、クラスタの更新を取得できなくなるため、クラスタへの接続が失われるためです。複数のURIを指定すると、Spymemcached/Couchbase ClientはURIのリスト内の次のノードに接続しようとします。

+0

私はMembaseを使用しなければなりませんでした。最初はcouchbase .. 私はObserverをコードに追加して、getAvailableServersを見ました。ただし、URIを1つだけ追加すると、利用可能なサーバーが1つだけ表示されます。だから私は、クライアントがクラスタ内のすべてのサーバのリストを取得することについて、まだ混乱しています。私はこれを確認する方法はありますか? また、私はMembaseのさまざまな種類の展開を見てきました。私は "クライアント側の森"に混乱している。私はこの定義を得ていないのですが...私は例が見えるか、それがどのように機能するかが分かると素晴らしいでしょう。 THX:D –

+0

この議論をCouchbaseフォーラムに移してみましょう。この議論のためには、stackoverflowはうまくいくと思います。 http://www.couchbase.com/forums/thread/wondering-how-couchbase-works-situation – mikewied

+0

うん、それは適切ですか?私は、couchbaseとmembaseの間の互換性が不思議でした。彼らは完全に正確ですか? apisを含む?それらの2つの唯一の違いはDBですか? –

関連する問題