【问题标题】:Dispatching Queue Jobs (local Dev Mac) Not Working调度队列作业(本地 Dev Mac)不工作
【发布时间】:2020-11-18 02:02:49
【问题描述】:

我尝试在本地开发机器上分派作业。

我设置了我的 .env 和队列配置; QUEUE_CONNECTION=数据库

我也做了迁移:

php 工匠队列:表

php 工匠迁移

然后创建我的工作,例如:myjob::dispatchNow();

最后运行我的工人:php artisan queue:work

尽管代码启动并执行得很好,但工作却没有。该作业未在数据库作业表中创建。 (不在faield_jobs中

我是否缺少任何步骤?

我需要在我的本地机器上安装其他东西来运行作业队列吗?

感谢您的帮助。

【问题讨论】:

    标签: php laravel queue jobs


    【解决方案1】:

    您通过使用myjob::dispatchNow() 来使用synchronous dispatching。数据库不需要参与,因为它在同一请求期间运行作业,而您的队列工作人员永远不会知道它。相当于拥有QUEUE_DRIVER=sync

    如果您在启动队列工作程序之前使用myjob::dispatch(),您将在数据库中看到该作业。

    【讨论】:

      猜你喜欢
      • 2018-12-29
      • 2021-04-22
      • 1970-01-01
      • 1970-01-01
      • 2021-09-16
      • 2018-09-11
      • 2018-08-04
      • 1970-01-01
      • 2021-08-06
      相关资源
      最近更新 更多