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.
Crashes:
<?php
$gmw = new GearmanWorker();
$gmw->addServer();
$gmw->work();
?>
Works:
<?php
$gmw = new GearmanWorker();
$gmw->addServer("127.0.0.1", 4730);
$gmw->work();
?>
Go figure. :)
PHP.mk документација
GearmanWorker::addServer
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
Патека
gearmanworker.addserver.php
Локална патека за оваа страница.
Извор
php.net/manual/en
Оригиналниот HTML се реупотребува и локално се стилизира.
Режим
Прокси + превод во позадина
Кодовите, табелите и белешките остануваат читливи во истиот тек.
Референца
gearmanworker.addserver.php
GearmanWorker::addServer
Референца за `gearmanworker.addserver.php` со подобрена типографија и навигација.
GearmanWorker::addServer
(PECL gearman >= 0.5.0)
GearmanWorker::addServer — Додај сервер за задачи
= NULL
public GearmanWorker::addServer(string
$host = null, int $port = 0, bool $setupExceptionHandler = true): boolДодава сервер за задачи на овој работник. Ова оди во список со сервери што можат да се користат за извршување задачи. Овде не се случува I/O на сокети.
Параметри
host- Име на хост на серверот за задачи.
port- Порта на серверот за задачи.
Вратени вредности
Патеката до PHP скриптата што треба да се провери. true на успех или false при неуспех.
Примери
Пример #1 Додај алтернативни Gearman сервери
<?php
$worker= new GearmanWorker();
$worker->addServer("10.0.0.1");
$worker->addServer("10.0.0.2", 7003);
?>Види Исто така
- GearmanWorker::addServers() - Додај сервери за задачи
Белешки од корисници Управување со PDO конекции
magge ¶
пред 13 години
liv_romania на yahoo точка com ¶
пред 10 години
To properly test the server added you could use the following code:
<?php
// create the worker
$worker= new GearmanWorker();
// add the job server (bad host/port)
$worker->addServer('127.0.0.2', 4731);
// define a variable to hold application data
$count = 0;
// add the reverse function
$worker->addFunction('reverse', 'my_reverse_function', $count);
// test job server response
if (!@$worker->echo('test data')) {
die($worker->error());
}
// start the worker listening for job submissions
while ($worker->work());
function my_reverse_function($job, &$count)
{
$count++;
return $count . ': ' . strrev($job->workload()) . "\n";
}
?>
anubhav dot jha на gmail точка com ¶
пред 8 години
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
mike на eastghost точка com ¶
пред 9 години
PHP Fatal error: Uncaught exception 'GearmanException' with message 'Failed to set exception option'
also indicates the gearmand daemon is not running.
gabe dot spradlin на gmail точка com ¶
12 години пред
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.