Memcache Memcache::setServerParams

(PECL memcache >= 2.1.0)

Memcache::setServerParams — 런타임 시 서버 매개변수 및 상태 변경


설명

Memcache::setServerParams(
    string $host,
    int $port = 11211,
    int $timeout = ?,
    int $retry_interval = false,
    bool $status = ?,
    callable $failure_callback = ?
): bool
                

Memcache::setServerParams()는 런타임에 서버 매개변수를 변경합니다. memcache_set_server_params() 함수를 사용할 수도 있습니다.

메모: 이 함수는 Memcache 버전 2.1.0에 추가되었습니다.


매개변수

host
memcached가 연결을 수신하는 호스트를 가리킵니다.
port
memcached가 연결을 수신하는 포트를 가리킵니다.
timeout
데몬에 연결하는 데 사용할 값(초)입니다. 기본값인 1초를 변경하기 전에 두 번 생각하십시오. 연결이 너무 느리면 캐싱의 모든 이점을 잃을 수 있습니다.
retry_interval
실패한 서버를 재시도하는 빈도를 제어하며 기본값은 15초입니다. 이 매개변수를 -1로 설정하면 자동 재시도가 비활성화됩니다. 확장이 dl()을 통해 동적으로 로드될 때 이 매개변수와 persistent 매개변수 모두 영향을 미치지 않습니다.
status
서버를 온라인으로 플래그 지정해야 하는지 여부를 제어합니다. 이 매개변수를 false로 설정하고 retry_interval을 -1로 설정하면 키 분배 알고리즘에 영향을 미치지 않도록 실패한 서버를 풀에 보관할 수 있습니다. 이 서버에 대한 요청은 memcache.allow_failover 설정에 따라 즉시 장애 조치되거나 실패합니다. 기본값은 true로, 서버가 온라인으로 간주되어야 함을 의미합니다.
failure_callback
사용자가 오류 발생 시 실행할 콜백 함수를 지정할 수 있습니다. 장애 조치가 시도되기 전에 콜백이 실행됩니다. 이 함수는 실패한 서버의 호스트 이름과 포트라는 두 개의 매개변수를 사용합니다.

반환 값

성공하면 true를, 실패하면 false를 반환합니다.


Examples

예제 #1 Memcache::setServerParams() 예제

                  
<?php

function _callback_memcache_failure($host, $port) {
    print "memcache '$host:$port' failed";
}

/* OO API */

$memcache = new Memcache;

// Add the server in offline mode
$memcache->addServer('memcache_host', 11211, false, 1, 1, -1, false);

// Bring the server back online
$memcache->setServerParams('memcache_host', 11211, 1, 15, true, '_callback_memcache_failure');

/* procedural API */

$memcache_obj = memcache_connect('memcache_host', 11211);
memcache_set_server_params($memcache_obj, 'memcache_host', 11211, 1, 15, true, '_callback_memcache_failure');

?>
                  
                

기타