Memcache::getServerStatus
(PECL memcache >= 2.1.0)
Memcache::getServerStatus — 用于获取一个服务器的在线/离线状态
说明
Memcache::getServerStatus(string
$host
, int $port
= 11211): intMemcache::getServerStatus()返回一个服务器的在线/离线状态,你也同样可以使用 函数memcache_get_server_status()。
注意:
这个函数在memcache2.1.0版本加入。
参数
-
host
-
主机监听地址。
-
port
-
主机监听端口,默认11211.
返回值
返回一个服务器的状态,0表示服务器离线,非0表示在线。
范例
示例 #1 Memcache::getServerStatus() 示例
<?php
/* OO API */
$memcache = new Memcache;
$memcache->addServer('memcache_host', 11211);
echo $memcache->getServerStatus('memcache_host', 11211);
/* procedural API */
$memcache = memcache_connect('memcache_host', 11211);
echo memcache_get_server_status($memcache, 'memcache_host', 11211);
?>

User Contributed Notes 2 notes
geoffrey dot hoffman at gmail dot com ¶
11 years ago
Beware... this method does not actually attempt to connect to the server and port you specify! It is not a health check to tell whether memcached is actually running or not!
It merely returns the server status from the pool, which defaults to TRUE when using addServer( ) with only required arguments.
Try it - stop your memcached and run the sample code above - it will output 1.
tom at all dash community dot de ¶
10 years ago
Note: the result of the function is cached. The cached is not automatically refreshed.
Call MemCache::getExtendedStats() to force a cache-update.
备份地址:http://www.lvesu.com/blog/php/memcache.getserverstatus.php