2 つの memcached サーバーを起動し、両方にデータを書き込みます。
memcached サーバーを 1 つ停止します。残りのサーバーが新しい memcached 書き込みを取得していることがわかります。
2 番目のサーバーが回復した後、php memcached は 2 番目のサーバーを使用していません。ここに私が使用している構成があります。私は何を間違っていますか?
$memcache = new Memcached ( 'a_mem_pool' );
$ss = $memcache->getServerList ();
if (empty ( $ss )) {
$memcache->setOption(Memcached::OPT_RECV_TIMEOUT, 1000);
$memcache->setOption(Memcached::OPT_SEND_TIMEOUT, 1000);
$memcache->setOption(Memcached::OPT_TCP_NODELAY, true);
$memcache->setOption(Memcached::OPT_SERVER_FAILURE_LIMIT, 50);
$memcache->setOption(Memcached::OPT_CONNECT_TIMEOUT, 500);
$memcache->setOption(Memcached::OPT_RETRY_TIMEOUT, 300);
$memcache->setOption(Memcached::OPT_DISTRIBUTION, Memcached::DISTRIBUTION_CONSISTENT);
$memcache->setOption(Memcached::OPT_REMOVE_FAILED_SERVERS, true);
$memcache->setOption(Memcached::OPT_LIBKETAMA_COMPATIBLE, true);
$memcache->addServer ( 'localhost', 11211, 1 );
$memcache->addServer ( 'server2.localhost', 8000, 1 );
}