1

我启动了 2 个 memcached 服务器,将数据写入它们。

我关闭了一台 memcached 服务器。我可以看到剩余的服务器获得了新的 memcached 写入。

第二台服务器恢复后,php memcached 没有使用第二台服务器。这是我正在使用的配置。我究竟做错了什么 ?

 $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 );
    }
4

0 回答 0