GearmanWorker::addServers
(PECL gearman >= 0.5.0)
GearmanWorker::addServers — Добавление нескольких серверов заданий
Описание
$servers
= 127.0.0.1:4730
)Добавляет один или несколько серверов задач в обработчик. Обработчик хранит список серверов, от которых он может получать задания на обработку. Метод просто добавляет информацию о серверах в этот список, никакого обмена данными между сервером и обработчиком в этот момент не происходит.
Список параметров
-
servers
-
Список отделенных запятой серверов в формате хост:порт. Если порт не указан, по умолчанию принимается номер 4730.
Возвращаемые значения
Возвращает TRUE
в случае успешного завершения или FALSE
в случае возникновения ошибки.
Примеры
Пример #1 Добавление двух серверов заданий
<?php
$worker= new GearmanWorker();
$worker->addServers("10.0.0.1,10.0.0.2:7003");
?>
- Функция GearmanWorker::addFunction() - Регистрация и добавление callback-функции
- Функция GearmanWorker::addOptions() - Добавление настроек обработчика
- Функция GearmanWorker::addServer() - Добавление сервера заданий
- Функция GearmanWorker::addServers() - Добавление нескольких серверов заданий
- Функция GearmanWorker::clone() - Создание копии обработчика
- Функция GearmanWorker::__construct() - Создание объекта GearmanWorker
- Функция GearmanWorker::echo() - Проверка отклика серверов заданий
- Функция GearmanWorker::error() - Получение последней обнаруженной ошибки
- Функция GearmanWorker::getErrno() - Получение номера ошибки
- Функция GearmanWorker::options() - Получение настроек обработчика
- Функция GearmanWorker::register() - Регистрация функции на сервере заданий
- Функция GearmanWorker::removeOptions() - Удаление настроек обработчика
- Функция GearmanWorker::returnCode() - Получение последнего кода возврата Gearman
- GearmanWorker::setId
- Функция GearmanWorker::setOptions() - Задание настроек обработчика
- Функция GearmanWorker::setTimeout() - Задание таймаута ожидания ввода/вывода на сокете
- Функция GearmanWorker::timeout() - Получение значения таймаута ожидания запросов на сокете
- Функция GearmanWorker::unregister() - Удалить регистрацию имени функции на всех серверах заданий
- Функция GearmanWorker::unregisterAll() - Удаление регистрации всех имен функций на серверах заданий
- Функция GearmanWorker::wait() - Ожидание запроса от какого-либо сервера задач
- Функция GearmanWorker::work() - Ожидание задания и его немедленное выполнение
Коментарии
as of this note, the current released version of gearman doesn't really work so well to add multiple servers, although it's fixed in SVN
see: https://bugs.php.net/bug.php?id=59423
if i just add one server to my worker, it works just fine and sits and waits for a job to do
if I have more than 1 server in my worker, i get a timeout warning which causes the worker to generate a php notice and the while loop fails.