是否可以从后台运行的齿轮工人发送数据(使用PHP)?
我知道我可以将状态(分子/分母)传递给客户端,但我需要"返回"数据.
背景是我需要在不同的服务器上调用worker,如果他们没有响应,主脚本应该继续.所以我想我必须在后台运行工人.但我需要他们的一些数据.
更新: 似乎不可能.我想我要么将数据存储在共享数据库中,要么将其从远程服务器写入本地服务器,或者从远程服务器读取数据,或者做如下所示:
shell_exec('gearman -f getdata-192-168-200-1 > /my/path/ 2>&1 & echo $!');
Run Code Online (Sandbox Code Playgroud)
小智 2
我认为您可以使用以下函数将数据从工作人员传递到客户端
GearmanJob::sendData($result);
Run Code Online (Sandbox Code Playgroud)
通过在 $result 变量中提供数据,您也可以使用该函数在客户端中处理这些数据
GearmanClient::setDataCallback("task_data");
function task_data($task)
{
echo "DATA: " . $task->data() . "\n";
}
Run Code Online (Sandbox Code Playgroud)
您可以获得更多信息
http://www.php.net/manual/en/gearmanclient.setdatacallback.php
| 归档时间: |
|
| 查看次数: |
1729 次 |
| 最近记录: |