CakeFest 2024: The Official CakePHP Conference

Memcache::getServerStatus

(PECL memcache >= 2.1.0)

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

说明

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

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

注意:

这个函数在 memcache 2.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);

?>

参见

add a note

User Contributed Notes 2 notes

up
4
geoffrey dot hoffman at gmail dot com
13 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.
up
0
tom at all dash community dot de
12 years ago
Note: the result of the function is cached. The cached is not automatically refreshed.

Call MemCache::getExtendedStats() to force a cache-update.
To Top