さまざまな種類のエラー (Memcached ノードのクラッシュ、高遅延など) が発生した場合の Memcached の態度を判断するために、いくつかの実験を行っています。クラッシュの場合、failOver は私が期待したものではありません。
私にとっては、memcached クライアントがクラッシュし、いくつかのオプションが有効になっている場合、memcached サーバーはしばらくしてから落ちたノードの使用を停止し、残りのノードのみを使用する必要があります。
実験の開始時に、2 つの memcached クライアントと 1 つのサーバーをリクエスト ジェネレーターと共に使用し、それらに 10000 のリクエストを格納し、リクエストはクライアント ノード間で均等に分散されます。
次に、ノードにクラッシュを注入すると、残りのノードはデッド ノードからのリクエストを取得しません。新しいセットが必要で、残りのノードで完了します。
リクエスト ジェネレーターはbrutisで、毎回 1 つの set と 9 つの get を実行します。
使用されるオプションは (OPT_REMOVE_FAILED_SERVERS, true) です。
libmemcached-1.0.16、memcached-1.4.15 を使用しています。memcached の PHP バージョンは 2.1.0 です。
削除された後、ハッシュ関数が生きているノードにのみ送信されるようにするにはどうすればよいですか?
ありがとう