Gearman 持久队列未保存在 Postgres 中

Gearman 持久队列未保存在 Postgres 中

我对 Gearman 0.32 (ppa:gearman-developers/ppa) 有一个问题 - 它没有在 Postgres 中保存队列以实现队列持久性。

  • Gearman 正在运行,我可以添加作业(例如,在 pastebin 上使用 DEBUG 详细程度以提高可读性):http://pastebin.com/3uRds4yi
  • Postgres 连接字符串正常 - 我设法使用来自同一主机的相同数据登录/访问数据库
  • Gearman 连接到 Postgres - 如果队列表在 DB 中不存在,它就会创建它。

尽管如此,数据库中仍未添加任何内容。我有 0 个注册的工作人员,当我将新作业添加到队列时,它们会排队,但从未保存在持久存储中。

答案1

发现问题:

当使用Pecl Gearman添加的扩展任务GearmanClient::addTask(以及函数的高/低优先级变体)时,将被添加到 Gearman 作业队列,但如果 PHP 脚本在GearmanClient::runTasks返回结果之前超时,则不会保存到数据库。

改用GearmanClient::addTaskBackground

相关内容