Memcache::getServerStatus

(PECL memcache >= 2.1.0)

Memcache::getServerStatus用于获取一个服务器的在线/离线状态

说明

Memcache::getServerStatus ( string $host , int $port = 11211 ) : int

Memcache::getServerStatus()返回一个服务器的在线/离线状态,你也同样可以使用 函数memcache_get_server_status()

Note:

这个函数在memcache2.1.0版本加入。

参数

host

主机监听地址。

port

主机监听端口,默认11211.

返回值

返回一个服务器的状态,0表示服务器离线,非0表示在线。

范例

Example #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

tom at all dash community dot de 06-Dec-2011 08:01
Note: the result of the function is cached. The cached is not automatically refreshed.

Call MemCache::getExtendedStats() to force a cache-update.
geoffrey dot hoffman at gmail dot com 21-Jul-2010 12:10
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.