Memcached::getServerByKey

(PECL memcached >= 0.1.0)

Memcached::getServerByKeyMap a key to a server

Beschreibung

public Memcached::getServerByKey ( string $server_key ) : array

Memcached::getServerByKey() returns the server that would be selected by a particular server_key in all the Memcached::*ByKey() operations.

Parameter-Liste

server_key

Ein Schlüssel, der den Server bestimmt, auf dem die Daten abgelegt oder von dem Daten abgerufen werden sollen. Anstatt den tatsächlichen Schlüssel des Wertes zu hashen wird der Server Key gehasht um den Memcached-Server mit dem gesprochen werden soll ausfindig zu machen. Dies erlaubt es alle zusammengehörigen Daten auf einem einzigen Server abzulegen um multiple Operationen effizienter zu gestalten.

Rückgabewerte

Returns an array containing three keys of host, port, and weight on success or FALSE on failure. Benutzen Sie wenn nötig Memcached::getResultCode().

Beispiele

Beispiel #1 Memcached::getServerByKey() example

<?php
$m 
= new Memcached();
$m->addServers(array(
    array(
'mem1.domain.com'1121140),
    array(
'mem2.domain.com'1121140),
    array(
'mem3.domain.com'1121120),
));

$m->setOption(Memcached::OPT_LIBKETAMA_COMPATIBLEtrue);

var_dump($m->getServerByKey('user'));
var_dump($m->getServerByKey('log'));
var_dump($m->getServerByKey('ip'));
?>

Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:

array(3) {
  ["host"]=>
  string(15) "mem3.domain.com"
  ["port"]=>
  int(11211)
  ["weight"]=>
  int(20)
}
array(3) {
  ["host"]=>
  string(15) "mem2.domain.com"
  ["port"]=>
  int(11211)
  ["weight"]=>
  int(40)
}
array(3) {
  ["host"]=>
  string(15) "mem2.domain.com"
  ["port"]=>
  int(11211)
  ["weight"]=>
  int(40)
}