2024年PHP开发者大会日本站

Memcache::setServerParams

(PECL memcache >= 2.1.0)

Memcache::setServerParams运行时更改服务器参数和状态

描述

Memcache::setServerParams(
    字符串 $host,
    整数 $port = 11211,
    整数 $timeout = ?,
    整数 $retry_interval = false,
    布尔值 $status = ?,
    可调用 $failure_callback = ?
): 布尔值

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

示例

示例 #1 Memcache::setServerParams() 示例

<?php

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

/* OO API */

$memcache = new Memcache;

// 以脱机模式添加服务器
$memcache->addServer('memcache_host', 11211, false, 1, 1, -1, false);

// 将服务器恢复在线
$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');

?>

参见

添加注释

用户贡献的注释

此页面没有用户贡献的注释。
To Top