文字

GearmanClient::addServers

(PECL gearman >= 0.5.0)

GearmanClient::addServersAdd a list of job servers to the client

说明

public bool GearmanClient::addServers ([ string $servers = 127.0.0.1:4730 ] )

Adds 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

范例

Example #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" );

?>

参见

  • GearmanClient::addServer() - Add a job server to the client

用户评论:

[#1] littlexiang521 at gmail dot com [2014-02-21 08:00:52]

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}

[#2] jachimcoudenys at gmail dot com [2013-07-30 08:14:50]

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.

上一篇: 下一篇: