GearmanClient::addServers
(PECL gearman >= 0.5.0)
GearmanClient::addServers — Add a list of job servers to the client
说明
public GearmanClient::addServers(string
$servers
= 127.0.0.1:4730): boolAdds a list of job servers that can be used to run a task. No socket I/O happens here; the servers are simply added to the full list of servers.
参数
-
servers
-
A comma-separated list of servers, each server specified in the format '
host:port
'.
返回值
成功时返回 true
, 或者在失败时返回 false
。
范例
示例 #1 Add two job servers
<?php
# Create our client object.
$gmclient= new GearmanClient();
# Add multiple job servers, the first on the default 4730 port
$gmclient->addServers("10.0.0.1,10.0.0.2:7003");
?>

User Contributed Notes 2 notes
jachimcoudenys at gmail dot com ¶
8 years ago
If you supply more than one server, it will always take the last server, unless it is unavailable. This is the way gearman works (and it is generally not a bad idea).
If you want to spread the jobs over multiple servers, you might want to shuffle the list of servers.
littlexiang521 at gmail dot com ¶
8 years ago
actually client side will throw an exception when any of the servers is down or unreachable instead like
Fatal error: Uncaught exception 'GearmanException' with message 'Failed to set exception option' in /var/www/ipao/Api/Q2/Test/gm-test.php:11
Stack trace:
#0 /var/www/ipao/Api/Q2/Test/gm-test.php(11): GearmanClient->addServer('xxx.xxx.xxx.xxx')
#1 {main}
备份地址:http://www.lvesu.com/blog/php/gearmanclient.addservers.php