队列未在 DigitalOcean 工作人员(AppPlatform)上处理

时间:2021-04-22 18:21:12

标签: laravel queue digital-ocean

我被卡住了......在他们的支持下来来回回,他们不认为这是一个问题。

在 DigitalOcean 上,我正在运行一个小应用程序。该应用程序由 4 个组件组成:

  1. 网络服务
  2. 工人
  3. Redis 数据库
  4. MySQL 数据库

1 和 2 具有相同的代码库和相同的环境变量。工作组件具有以下运行命令。它将启动工作进程并调度调度程序。

nohup php artisan queue:work --daemon &

while true; do
    echo "=> Running scheduler"
    php artisan schedule:run || true;
    echo "=> Sleeping for 60 seconds"
    sleep 60;
done

在 Web 服务中,我们创建了一个页面来查看队列大小。我们确定队列中有项目。

当工作器启动时,不处理作业。当我进入工作人员的控制台并手动启动进程时,进程启动,但不处理任何作业。

当我进入 Web 服务并启动 queue:work 时,它会处理队列中的作业。

相同的代码库,(因为这是从 GitHub 中抓取的),相同的 env 变量。没有错误,没有日志。 Redis 连接似乎没问题。

0 个答案:

没有答案