(PECL memcached >= 0.1.0)
Memcached::getServerByKey — Map a key to a server
$server_key
)
Memcached::getServerByKey() returns the server that
would be selected by a particular server_key
in all
the Memcached::*ByKey() operations.
server_key
A chave identificando o servidor onde armazenar ou recuperar o valor. Em vez de fazer o hash do item, é feito o hash da chave do servidor quando decidindo com qual servidor memcached conectar. Isto permite que itens relacionados sejam agrupados em um único servidor para maior eficiência de operações múltiplas.
Returns an array containing three keys of host,
port, and weight on success or FALSE
on failure.
Use Memcached::getResultCode() se necessário.
Exemplo #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'));
?>
O exemplo acima irá imprimir algo similar à:
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) }