Memcache::getExtendedStats
(PECL memcache >= 2.0.0)
Memcache::getExtendedStats — 缓存服务器池中所有服务器统计信息
说明
Memcache::getExtendedStats
( string $type
= ?
, int $slabid
= ?
, int $limit
= 100
) : array
Note:
这个函数在Memcache2.0.0版本加入。
Note:
(译注)获取Memcache内所有数据方法:首先使用getExtendedStats('slabs')获取到每个服务器上活动slabs分块的id, 然后
使用getExtendedStats('cachedump', $slabid, $limit)来获取每个slab里面缓存的项,其中$slabid是slab分块id, $limit指
期望获取其中的多少条记录。
参数
-
type
-
期望抓取的统计信息类型,可以使用的值有{reset, malloc, maps, cachedump, slabs, items, sizes}。
通过memcached协议指定这些附加参数是为了方便memcache开发者(检查其中的变动)。
-
slabid
-
用于与参数type
联合从指定slab分块拷贝数据,cachedump命令会完全占用服务器通常用于
比较严格的调试。
-
limit
-
用于和参数type
联合来设置cachedump时从服务端获取的实体条数。
返回值
返回一个二维关联数组的服务器统计信息或者在失败时返回false
。
范例
Example #1 Memcache::getExtendedStats() 示例
<?php
$memcache_obj = new Memcache;
$memcache_obj->addServer('memcache_host', 11211);
$memcache_obj->addServer('failed_host', 11211);
$stats = $memcache_obj->getExtendedStats();
print_r($stats);
?>
Array
(
[memcache_host:11211] => Array
(
[pid] => 3756
[uptime] => 603011
[time] => 1133810435
[version] => 1.1.12
[rusage_user] => 0.451931
[rusage_system] => 0.634903
[curr_items] => 2483
[total_items] => 3079
[bytes] => 2718136
[curr_connections] => 2
[total_connections] => 807
[connection_structures] => 13
[cmd_get] => 9748
[cmd_set] => 3096
[get_hits] => 5976
[get_misses] => 3772
[bytes_read] => 3448968
[bytes_written] => 2318883
[limit_maxbytes] => 33554432
)
[failed_host:11211] => false
)