PHP Doku:: Get statistics from all servers in pool - memcache.getextendedstats.html

Verlauf / Chronik / History: (1) anzeigen

Sie sind hier:
Doku-StartseitePHP-HandbuchFunktionsreferenzSonstige DiensteMemcacheThe Memcache classMemcache::getExtendedStats

Ein Service von Reinhard Neidl - Webprogrammierung.

The Memcache class

<<Memcache::get

Memcache::getServerStatus>>

Memcache::getExtendedStats

(PECL memcache >= 2.0.0)

Memcache::getExtendedStatsGet statistics from all servers in pool

Beschreibung

array Memcache::getExtendedStats ([ string $type [, int $slabid [, int $limit = 100 ]]] )

Memcache::getExtendedStats() returns a two-dimensional associative array with server statistics. Array keys correspond to host:port of server and values contain the individual server statistics. A failed server will have its corresponding entry set to FALSE. You can also use the memcache_get_extended_stats() function.

Hinweis:

This function has been added to Memcache version 2.0.0.

Parameter-Liste

type

The type of statistics to fetch. Valid values are {reset, malloc, maps, cachedump, slabs, items, sizes}. According to the memcached protocol spec these additional arguments "are subject to change for the convenience of memcache developers".

slabid

Used in conjunction with type set to cachedump to identify the slab to dump from. The cachedump command ties up the server and is strictly to be used for debugging purposes.

limit

Used in conjunction with type set to cachedump to limit the number of entries to dump.

Warnung

The cachedump stat type has been removed from the memcached daemon due to security reasons.

Rückgabewerte

Returns a two-dimensional associative array of server statistics or FALSE on failure.

Beispiele

Beispiel #1 Memcache::getExtendedStats() example

<?php
    $memcache_obj 
= new Memcache;
    
$memcache_obj->addServer('memcache_host'11211);
    
$memcache_obj->addServer('failed_host'11211);
    
    
$stats $memcache_obj->getExtendedStats();
    
print_r($stats);
?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

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
)

Siehe auch


Ein BenutzerBeitrag:
- Beiträge aktualisieren...
manmca dot 2280 at gmail dot com
29.05.2010 1:35
Get lists of all the keys stored in memcache server....

<?php
/**
 * Function to get all memcache keys
 * @author Manish Patel
 * @Created:  28-May-2010 
 */
function getMemcacheKeys() {

   
$memcache = new Memcache;
   
$memcache->connect('127.0.0.1', 11211) or die ("Could not connect to memcache server");

   
$list = array();
   
$allSlabs = $memcache->getExtendedStats('slabs');
   
$items = $memcache->getExtendedStats('items');
    foreach(
$allSlabs as $server => $slabs) {
        foreach(
$slabs AS $slabId => $slabMeta) {
          
$cdump = $memcache->getExtendedStats('cachedump',(int)$slabId);
            foreach(
$cdump AS $keys => $arrVal) {
                foreach(
$arrVal AS $k => $v) {                   
                    echo
$k .'<br>';
                }
           }
        }
    }   
}
//EO getMemcacheKeys()
?>

Hope it helps....



PHP Powered Diese Seite bei php.net
The PHP manual text and comments are covered by the Creative Commons Attribution 3.0 License © the PHP Documentation Group - Impressum - mail("TO:Reinhard Neidl",...)