Memcached Memcached::getServerByKey

(PECL memcached >= 0.1.0)

Memcached::getServerByKey — 서버에 키 매핑


설명

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

Memcached::getServerByKey()는 모든 Memcached::*ByKey() 작업에서 특정 server_key에 의해 선택되는 서버를 반환합니다.


매개변수

server_key
값을 저장하거나 검색할 서버를 식별하는 키입니다. 항목에 대한 실제 키를 해시하는 대신 어떤 memcached 서버와 통신할지 결정할 때 서버 키를 해시합니다. 이를 통해 관련 항목을 단일 서버에서 함께 그룹화하여 다중 작업의 효율성을 높일 수 있습니다.

반환 값

성공 시 호스트, 포트 및 가중치의 세 가지 키를 포함하고 실패 시 false을 포함하는 배열을 반환합니다. 필요한 경우 Memcached::getResultCode()를 사용합니다.


Examples

예제 #1 Memcached::getServerByKey() 예제

                  
<?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'));
?>
                  
                

위의 예는 다음과 유사한 결과를 출력합니다.

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)
}