1

現在、 memcachedrepcachedの両方を並べて使用している (異なるポートでリッスンしている)サーバーのグループがあります。memcached サービスは、共有する必要のないローカル データを格納するために使用されます。repcached インスタンスは、サーバーのペアが連携できるようにするために使用されます。

Couchbase を見つけたときは、次のことができるようでとても興奮しました。

  1. 一部のデータを永続化する
  2. 3 つ以上のノードと共有する
  3. memcached API を使用するため、ほとんどのコードをそのままにしておきます

そこで、Couchbase をインストールしましたが、問題が発生しました。同じサーバーに 2 つのクラスターをセットアップする方法がないようです。他のサーバーと共有しない 1 つのクラスターと、他のサーバーと共有する 2 つ目のクラスターが必要です。

はい、Couchbase 用にいくつかの専用サーバーをセットアップして異なるクラスターを作成することはできますが、現在 memcached と repcached を実行しているサーバーには十分な CPU と RAM の余裕があるので、これらのサービスを Couchbase に置き換えることをお勧めします。

同じホストで Couchbase の 2 つのインスタンスを実行することは可能ですか? いくつかのポートを変更する必要があることに気づきました。このようなことについて話している人を見たことがないので、答えは「いいえ」だと思います... しかし、Couchbase が私のニーズにぴったりだと思われるので、尋ねなければなりませんでした。

これがうまくいかない場合は、代替の提案に興味があります。たとえば、私が思いついたアイデアの 1 つは、Memcached + MemcacheDBを使用して永続的な非共有 Couchbase クラスターをエミュレートすることでした。ただし、MemcacheDB が期限切れのレコードをサポートしていないという事実は気に入らず、毎月何百万ものレコードを削除するルーチンを作成する必要はありません (時間の経過とともにパフォーマンスが低下するのではないかと考えています)。

任意の考えをいただければ幸いです。:-)

4

1 に答える 1

2

ここでの最善の解決策は、Couchbase の単一インスタンスを実行し、1 つの memcached バケットと 1 つの Couchbase バケットを作成することです。memcached バケットには永続性がなく、memcached とまったく同じように機能します。もう 1 つのバケットには永続性があり、memcached API をサポートします。1 つの Couchbase サーバーで必要な数のバケットを作成できます。

もう 1 つのオプションは、各 vm で Couchbase サーバーを仮想化して実行することです。

于 2012-06-01T04:18:00.723 に答える