Memcache::setServerParams
memcache_set_server_params
サーバーのパラメータおよび状態を、実行時に変更する
&reftitle.description;
boolMemcache::setServerParams
stringhost
intport11211
inttimeout
intretry_interval&false;
boolstatus
callablefailure_callback
boolmemcache_set_server_params
Memcachememcache
stringhost
intport11211
inttimeout
intretry_interval&false;
boolstatus
callablefailure_callback
Memcache::setServerParams は、
サーバーのパラメータを実行時に変更します。
この関数は、Memcache バージョン 2.1.0 で追加されました。
&reftitle.parameters;
host
memcached が接続を待ち受けるホストを指定します。
port
memcached が接続を待ち受けるポートを指定します。
timeout
デーモンへの接続の際に使用する値 (秒単位) です。
デフォルト値を 1 秒でも変更する前には十分注意してください。
接続が遅くなってしまうと、 キャッシュ処理のメリットが
なくなってしまいます。
retry_interval
サーバーとの接続が失敗した際に再試行を行う頻度を設定します。
デフォルト値は 15 秒です。このパラメータを -1 にすると、
自動的な再試行を行いません。
dl を使用してこの拡張モジュールが動的に
読み込まれている場合は、このパラメータおよび
persistent は何の効果も及ぼしません。
status
サーバーがオンライン状態であるかどうかを制御します。このパラメータを
&false; にし、retry_interval を -1
と設定すると、失敗したサーバーもコネクションプールに残します。
これにより、キー配布アルゴリズムに影響を与えないようにします。
このサーバーへのリクエストは、フェイルオーバーされるか失敗します。
どちらになるかは memcache.allow_failover
の設定によって決まります。デフォルトは &true; で、
サーバーがオンライン状態であることを意味します。
failure_callback
エラーが発生した際に実行されるコールバック関数を指定できるようにします。
コールバック関数は、フェイルオーバー処理の前に実行されます。
この関数は、ふたつの引数 (ホスト名、失敗したサーバーのポート)
を受け取ります。
&reftitle.returnvalues;
&return.success;
&reftitle.examples;
Memcache::setServerParams の例
addServer('memcache_host', 11211, false, 1, 1, -1, false);
// サーバーをオンラインに変更します
$memcache->setServerParams('memcache_host', 11211, 1, 15, true, '_callback_memcache_failure');
/* 手続き型の API */
$memcache_obj = memcache_connect('memcache_host', 11211);
memcache_set_server_params($memcache_obj, 'memcache_host', 11211, 1, 15, true, '_callback_memcache_failure');
?>
]]>
&reftitle.seealso;
Memcache::addServer
Memcache::getServerStatus