Memcached::addServer
(PECL memcached >= 0.1.0)
Memcached::addServer — Добавляет сервер в пул
Описание
$host
, int $port
, int $weight
= 0
) : bool
Memcached::addServer() добавляет указанный сервер в пул.
При этом соединение установлено не будет, но если вы используете настройку
консистентного распределения ключей (с помощью
Memcached::DISTRIBUTION_CONSISTENT
или
Memcached::OPT_LIBKETAMA_COMPATIBLE
), некоторые
внутренние структуры данных будут обновлены. Таким образом, если вам необходимо добавить
несколько серверов, предпочтительнее использовать
Memcached::addServers() т.к. обновление данных происходит однократно.
Один и тот же сервер может встречаться в пуле несколько раз, потому что никаких
проверок на дублирование вхождений нет. Но это не целесообразно; вместо этого
нужно использовать параметр weight
для повышения
приоритета данного сервера.
Список параметров
-
host
-
Имя хоста memcache сервера. Если имя хоста будет недействительным, функции, работающие с данными установят результирующий код
Memcached::RES_HOST_LOOKUP_FAILURE
. В версии 2.0.0b1, данный параметр может также определять путь до unix сокет файла, например,/path/to/memcached.sock
для использования сокета домена UNIX (UDS), в данном случаеport
должен быть установлен в0
. -
port
-
Порт на котором работает сервер memcache. Обычно это
11211
порт. В версии 2.0.0b1, установите этот параметр в0
, при использовании сокета домена UNIX (UDS). -
weight
-
Весовой коэффициент для заданного сервера по отношению к общему весу всех серверов в пуле. Данная настройка управляет вероятностью сервера быть выбранным для использования. Она используется только в случае консистентного распределения и обычно соответствует количеству памяти, доступному для memcache на сервере.
Возвращаемые значения
Возвращает true
в случае успешного завершения или false
в случае возникновения ошибки.
Примеры
Пример #1 Пример использования Memcached::addServer()
<?php
$m = new Memcached();
/* Добавляет 2 сервера в пул, вероятность быть выбранным
у второго сервера в 2 раза выше. */
$m->addServer('mem1.domain.com', 11211, 33);
$m->addServer('mem2.domain.com', 11211, 67);
?>
Смотрите также
- Memcached::addServers() - Добавляет несколько серверов в пул
- Memcached::resetServerList() - Очищает список серверов