【问题标题】:Laravel 5.2 queue - Delay not workingLaravel 5.2 队列 - 延迟不起作用
【发布时间】:2018-08-02 07:06:13
【问题描述】:

我需要你的帮助。

我正在使用 Laravel 队列和 Linux 主管工具(与文档完全一样)

现在我有一个非常奇怪的问题。

当我毫不拖延地使用这个命令时

$job = (new SendAutoresponderEmail($poptin,$autoresponder,$data));

一切正常。

但是当我使用延迟选项时

$job = (new SendAutoresponderEmail($poptin,$autoresponder,$data))->delay(60);

作业失败,不再继续

我可以在失败的作业表上看到作业。

现在...当我不使用主管工具并在终端中运行命令时:

php artisan queue:listen

带有延迟选项的命令和其他队列任务工作正常。

这是我的 larave-worker 内容的样子:

[program:laravel-worker]
process_name=%(program_name)s_%(process_num)02d
command=php /var/www/html/Poptin/artisan queue:work database --sleep=3 --tries=3 --daemon
autostart=true
autorestart=true
user=ubuntu
numprocs=2
redirect_stderr=true
stdout_logfile=/var/www/html/<project>/worker.log

您认为我需要做什么才能修复它?

另外...我如何为不同的工作使用不同的队列?像这样

$job = (new SendAutoresponderEmail($poptin,$autoresponder,$data))->onQueue('autoresponder')->delay(60);

?

目前,我只有默认队列。我在 config/queue.php 文件中声明其他队列的位置在哪里?

'connections' => [

    'sync' => [
        'driver' => 'sync',
    ],

    'database' => [
        'driver' => 'database',
        'table' => 'jobs',
        'queue' => 'default',
        'expire' => 60,
    ],

【问题讨论】:

  • 在您运行作业时检查您的日志
  • 您能检查一下您的failed_jobs 表吗?异常列记录了什么?
  • 我们的 failed_jobs 表中没有异常列
  • 对碳使用延迟 ..
  • 已经试过了 - 不工作。 @Demonyowh

标签: php linux laravel laravel-5 queue


【解决方案1】:

派遣你的工作

$job = (new SendAutoresponderEmail($poptin,$autoresponder,$data))->delay(60); $this->dispatch($job);

【讨论】:

    【解决方案2】:

    所以...最终,我通过在不同的连接和队列中创建一个新的主管工作人员来解决这个问题,如下所示:

    [program:autoresponder-worker]
    process_name=%(program_name)s_%(process_num)02d
    command=php /var/www/html/<Project>/artisan queue:listen autoresponder --sleep=5 -
    -tries=3
    autostart=true
    autorestart=true
    user=ubuntu
    numprocs=1
    redirect_stderr=true
    stdout_logfile=/var/www/html/<Project>/worker.log
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-07-25
      • 1970-01-01
      • 2018-08-16
      • 2015-09-30
      • 1970-01-01
      • 2015-11-06
      • 2017-01-27
      • 1970-01-01
      相关资源
      最近更新 更多