Memcached::getServerByKey
(PECL memcached >= 0.1.0)
Memcached::getServerByKey — Map a key to a server
Beschreibung
$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', 11211, 40),
array('mem2.domain.com', 11211, 40),
array('mem3.domain.com', 11211, 20),
));
$m->setOption(Memcached::OPT_LIBKETAMA_COMPATIBLE, true);
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) }