1

I start 2 memcached servers, Write data to both of them.

I take down one memcached server. I can see that the remaining server gets the new memcached writes.

After the 2nd server is recovered, php memcached is not using the 2nd server. Here are the configs that I am using. What am I doing wrong ?

 $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 );
    }
WorM
  • 1,115
  • 1
  • 12
  • 18

0 Answers0