Longhorn PHP 2025 - Speakers and Schedule Announced!

Memcache::setServerParams

memcache_set_server_params

(PECL memcache >= 2.1.0)

Memcache::setServerParams -- memcache_set_server_paramsИзменяет параметры и статус сервера во время выполнения

Описание

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

Метод Memcache::setServerParams() изменяет параметры сервера на лету.

Замечание:

Функцию добавили в модуль Memcache версии 2.1.0.

Список параметров

host

В параметре указывается хост, на котором сервер memcached прослушивает соединения.

port

В параметре указывается порт, на котором сервер memcached прослушивает соединения.

timeout

Время ожидания в секундах для подключения к демону. Изменение значения по умолчанию в 1 секунду часто нивелирует преимущества кеширования на медленных соединениях.

retry_interval

Параметр управляет частотой проверки доступности отказавшего сервера. Значение по умолчанию равно 15 секундам. Значение "-1" отключает автоматические повторные проверки. Ни этот параметр, ни параметр persistent не влияют на работу метода, если модуль загружается динамически функцией dl().

status

Параметр определяет, помечать ли сервер флагом "онлайн". Одновременная установка значения false для этого параметра и значения -1 для параметра retry_interval оставит отказавший сервер в пуле, чтобы не влиять на алгоритм распределения ключей. Запрос к этому серверу либо запустит механизм отказоустойчивости, либо сразу же прервётся с ошибкой, в зависимости от настройки директивы memcache.allow_failover. Значение по умолчанию равно true — сервер активен и готов принимать запросы.

failure_callback

Пользовательская callback-функция, которая запустится при ошибке. Эта функция вызывается до запуска механизма отказоустойчивости. Функция принимает два параметра — имя хоста и порт отказавшего сервера.

Возвращаемые значения

Функция возвращает true, если выполнилась успешно, или false, если возникла ошибка.

Примеры

Пример #1 Пример изменения параметров и статуса сервера методом Memcache::setServerParams()

<?php

function _callback_memcache_failure($host, $port)
{
print
"неудачное подключение memcache - '$host:$port'";
}

/* Объектно-ориентированный 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');

/* Процедурный 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