Memcached::getServerByKey

(PECL memcached >= 0.1.0)

Memcached::getServerByKeyMap a key to a server

Beschreibung

publicMemcached::getServerByKey(string$server_key): array|false

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 ausfindig zu machen, mit dem gesprochen werden soll. 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 successBei einem Fehler wird false zurückgegeben.. 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) }
To Top