The 5th Annual China PHP Conference


(PECL gearman >= 0.5.0)

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


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

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.



A comma-separated list of servers, each server specified in the format 'host:port'.

Return Values

Returns TRUE on success or FALSE on failure.


Example #1 Add two job servers


# Create our client object.
$gmclient= new GearmanClient();

# Add multiple job servers, the first on the default 4730 port


See Also

add a note add a note

User Contributed Notes 2 notes

jachimcoudenys at gmail dot com
3 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
3 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('')
#1 {main}
To Top