我有一个页面,成千上万的用户可以同时访问某个方法。我每次都连接以下代码。由于这将进入一个单独的memcache服务器,这会导致减速是否有一种方法只连接一次并重用该连接?每次请求后我都必须关闭连接吗?
$primary_connected = $memcache_primary->connect($primary_memcache_server, 11211);
if($primary_connected){
$data = $memcache_primary->get($key);
if ($data != NULL) {
return data;
}
}
else{
/////Get data from database
}
答案 0 :(得分:4)
如果您正在使用PHP memcached类(最后一个d
,而不是memcache
),那么可以打开持久连接。
您可以将持久性ID传递给构造函数,该构造函数将打开持久性连接,后续使用相同持久性ID的实例将使用该连接。
$memcached = new Memcached('method_name_or_persistent_identifier');
$memcached->addServer(...);
// use it
希望有所帮助。
有关详细信息,请参阅Memcached::__construct()
。