5つのWebサーバーでmemcacheを実行しています。これらはすべてphpのホストリストにあり、フロントエンドで負荷分散されています。 memcachedは配布されることになっているので、phpクライアントはキー/値のペアを書き込むノードを決定し、同じノードから後で取得できるようにレコードを保持しますか?
または、phpクライアントコードはそれを行うのに十分スマートではなく、むしろすべてのサーバーにデータを書き込んでから、プールから1つをランダムに選択して読み取りますか?
しかし、それがそうなら;ホストリスト/プール内のすべてのインスタンスに書き込みます。次に、冗長性のためにデータを複製する http://repcached.sourceforge.net/ のようなツールの目的は何ですか。
私が尋ねる理由は、すべての負荷分散サーバーがそれを実行しているためであり、実際にプール内のすべてのサーバーに書き込みを行うと、分散されている目的に反するように見えるため、phpをホストから強制的にプルする必要がありますlocalhostであるホストリスト内。
Memecacheライブラリは、リクエストを正しいサーバーに送信する責任があります。ライブラリは、提供されたリストを使用してリクエストをさまざまなサーバーに送信し、memcacheはレプリケーションを行いません。
Linuxジャーナルの記事 を参照してください。 memcacheの仕組みについて詳しく説明します。