【问题标题】:What Constitutes a Retry in the Job Queue?什么构成了作业队列中的重试?
【发布时间】:2010-10-22 14:02:38
【问题描述】:

我最初在 Zend 论坛上发布了这个问题,但我认为在这里发布也是明智之举。

要重试作业,究竟要发生什么?我尝试过超时、50x 响应代码,并将状态设置为“FAILED”。

我有一个创建工作的简单脚本...

$job_url = 'http://localhost/consumer.php?time=' . microtime(true);
$job_queue = new ZendJobQueue();

$job_options = array(
   'name' => 'Test Job'
);

$job_id = $job_queue->createHttpJob(
   $job_url,
   array(),
   $job_options
);

我尝试通过删除 consumer.php 来触发重试作业,从 consumer.php 中返回 500,并且让 consumer.php 花费的时间超过 jqd.ini 中为 zend_jobqueue.http_job_timeout 设置的 120 秒.这些似乎都不会触发重试。

所以,我问,实际上什么会触发重试?

请帮忙。

【问题讨论】:

  • Zend 论坛上是否已经回答了这个问题?

标签: php zend-server job-queue


【解决方案1】:

在 ZendCon 2010 通过电子邮件、电话和面对面与 Zend 工程团队进行大量对话后,发现答案是 Job Queue 实用程序中的一个错误。

Zend Server 5.0.4 版包含对 Job Queue 实用程序的修复,专门用于更好地处理 HTTP 错误的重试。

查看release notes

很抱歉耽搁了清理这个问题。

【讨论】:

    猜你喜欢
    • 2020-12-29
    • 1970-01-01
    • 2017-12-08
    • 1970-01-01
    • 2017-04-14
    • 1970-01-01
    • 2017-09-23
    • 2020-12-13
    • 1970-01-01
    相关资源
    最近更新 更多