截至本笔记,当前发布的 Gearman 版本在添加多个服务器方面效果并不好,虽然在 SVN 中已修复
参见:https://bugs.php.net/bug.php?id=59423
如果我只将一台服务器添加到我的工作器中,它会正常工作并等待作业
如果我的工作器中有多台服务器,我将收到超时警告,这会导致工作器生成 PHP 通知,并且 while 循环失败。
(PECL gearman >= 0.5.0)
GearmanWorker::addServers — 添加作业服务器
将一个或多个作业服务器添加到此工作器。这些服务器将进入一个可以用来运行作业的服务器列表。此处不会发生任何套接字 I/O。
servers
以逗号分隔的作业服务器列表,格式为 host:port。如果未指定端口,则默认为 4730。
示例 #1 添加两个作业服务器
<?php
$worker= new GearmanWorker();
$worker->addServers("10.0.0.1,10.0.0.2:7003");
?>
截至本笔记,当前发布的 Gearman 版本在添加多个服务器方面效果并不好,虽然在 SVN 中已修复
参见:https://bugs.php.net/bug.php?id=59423
如果我只将一台服务器添加到我的工作器中,它会正常工作并等待作业
如果我的工作器中有多台服务器,我将收到超时警告,这会导致工作器生成 PHP 通知,并且 while 循环失败。