(PECL memcached >= 0.1.0)
Memcached::getServerByKey — Map a key to a server
$server_key
) : array
Memcached::getServerByKey() returns the server that
would be selected by a particular server_key in all
the Memcached::*ByKey() operations.
server_keyCheia ce identifică serverul pe care se înscrie, sau de pe care se citește valoarea. În loc de a efectua hash asupra cheii nemijlocite a elementului, se efectuaează hash asupra cheii serverului, atunci când se decide cu care server memcached să se comunice. Aceasta permite ca elementele asociate să fie grupate împreună pe un singur server pentru a mări eficiența operațiilor multiple.
Returns an array containing three keys of host,
port, and weight on success or FALSE
on failure.
Utilizați
Memcached::getResultCode()
dacă e necesar.
Example #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'));
?>
Exemplul de mai sus va afișa ceva similar cu:
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)
}