我正在尝试从他们的文档中运行示例 Gearman 工作者(见下文),但每次我这样做时,我的 Gearman 日志文件中都会出现大量错误,如下所示:   FATAL [   0] gearman_packet_unpack_header:invalid command value. 当我运行 Gearman 客户端(同样是他们自己的示例)时,它似乎并没有改变任何东西。什么都没发生。
这是失败的示例工作者代码
# Create our worker object.
$worker= new GearmanWorker();
# Add default server (localhost).
$worker->addServer();
# Register function "reverse" with the server.
$worker->addFunction("reverse", "reverse_fn");
while (1)
{
  print "Waiting for job...\n";
  $ret= $worker->work();
  if ($worker->returnCode() != GEARMAN_SUCCESS)
    break;
}
# A much simple reverse function
function reverse_fn($job)
{
  $workload= $job->workload();
  echo "Received job: " . $job->handle() . "\n";
  echo "Workload: $workload\n"; 
  $result= strrev($workload);
  echo "Result: $result\n";
  return $result;
}
>php -i:
extension version   1.0.2
libgearman version  0.29
Default TCP Host    localhost
Default TCP Port    4730
>gearmand -V:
gearmand 0.29
如何正确配置 Gearman 以使其正常工作?libgearman 与 gearmand 版本相同,我的 PECL 扩展是最新的稳定版本。我不确定还能尝试什么。