2012-04-20 82 views
1

K,所以有一些麻烦与以下PHP Memcached的连接超时

$this->cacheServers = array(
    array('test.com', 11211) 
); 

$this->memcache = new \Memcached(); 
$this->memcache->setOption(\Memcached::OPT_COMPRESSION, TRUE); 
$this->memcache->setOption(\Memcached::OPT_LIBKETAMA_COMPATIBLE, TRUE); 
$this->memcache->setOption(\Memcached::OPT_CACHE_LOOKUPS, TRUE); 
$this->memcache->setOption(\Memcached::OPT_CONNECT_TIMEOUT, 50); 
$this->memcache->setOption(\Memcached::OPT_POLL_TIMEOUT, 50); 
$this->memcache->setOption(\Memcached::OPT_RECV_TIMEOUT, 10000); 
$this->memcache->setOption(\Memcached::OPT_SEND_TIMEOUT, 10000); 

$this->memcache->setOption(\Memcached::OPT_SERVER_FAILURE_LIMIT, 1); 
$this->memcache->setOption(\Memcached::OPT_RETRY_TIMEOUT, 50); 

$this->memcache->setOption(\Memcached::OPT_NO_BLOCK, TRUE); 
$this->memcache->setOption(\Memcached::OPT_TCP_NODELAY, true); 
$this->_data['connected'] = $this->memcache->addServers($this->cacheServers); 

这样的IM,即时通讯试图让它超时,但它只是挂起

回答

3

实现我自己的telnet测试与fsockopen和一秒钟超时。

再次回答我自己的问题

+0

似乎令人困惑的是,PHP有一个memcache和memcached扩展。 – cr125rider 2012-06-13 20:39:07

+0

是的,有点新的 – Ascherer 2012-06-13 22:18:09

+2

Memcache是​​更老,更糟糕的一个。 Memcached是更新,更好的一个。 – 2012-10-05 09:12:13