(PECL gearman >= 0.5.0)

GearmanWorker::addServerДобавление сервера заданий


public bool GearmanWorker::addServer ([ string $host = [, int $port = 4730 ]] )

Добавляет сервер заданий в обработчик. Обработчик хранит список серверов, от которых он может получать задания на обработку. Метод просто добавляет информацию о сервере в этот список, никакого обмена данными между сервером и обработчиком в этот момент не происходит.

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


Имя хоста сервера задач.


Порт сервера задач.

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

Возвращает TRUE в случае успешного завершения или FALSE в случае возникновения ошибки.


Пример #1 Добавление альтернативных Gearman серверов

= new GearmanWorker(); 

Смотрите также


If you suddenly start getting a:

PHP Fatal error:  Uncaught exception 'GearmanException' with message 'Failed to set exception option' in

...on your GearmanWorker::work() calls, I was able to fix this by specifying values to GearmanWorker::addServer(), even if they are the same as the documented default values.


= new GearmanWorker();


= new GearmanWorker();

Go figure. :)
2012-10-14 22:21:02
The manual states that you get a TRUE on success and FALSE on failure. When I have attempted to connect to a server that is powered off I still get TRUE. The return from returnCode() is 0 which is the same as the returnCode() from a successful connection.

I have not yet found a way around this.
2013-09-27 06:42:12
No socket I/O happens in addserver.
2013-10-30 10:10:18
To properly test the server added you could use the following code:

// create the worker
$worker= new GearmanWorker();

// add the  job server (bad host/port)

// define a variable to hold application data
$count 0;

// add the reverse function

// test job server response
if (!@$worker->echo('test data')) {

// start the worker listening for job submissions
while ($worker->work());

my_reverse_function($job, &$count)

$count ': ' strrev($job->workload()) . "\n";
2015-07-18 18:14:57
On Ubuntu (php7 php-gearman/xenial,now amd64) this function throws a GearmanException. 
Please use in try catch
2017-02-07 12:28:04
PHP Fatal error:  Uncaught exception 'GearmanException' with message 'Failed to set exception option'

also indicates the gearmand daemon is not running.
2017-02-18 15:23:45
I was receving following message on add server Uncaught exception 'GearmanException' with message 'Failed to set exception option' in <<filename>>:<<linenumber >>
 was on centos 6.5

fixed by following steps:
yum install gearmand
/etc/init.d/gearmand start
2017-05-02 14:26:41

    Поддержать сайт на родительском проекте КГБ