Thi*_*nte 2 amazon-web-services laravel amazon-elastic-beanstalk laravel-queue
在我的本地服务器中,我可以毫无问题地使用队列,只需使用:
php artisan queue:work。
但在我的 AWS 服务器中,队列没有运行。
我的连接队列是database并且同步邮件发送没有问题。
我检查了作业表,可以看到我的队列,但由于未知原因它从未运行。
是否需要在AWS Elastic Beanstalke服务器中进行一些不同的配置?
我尝试过手动使用
php artisan queue:listen
php artisan queue:work
Run Code Online (Sandbox Code Playgroud)
两者都失败了。
需要检查的事项:
尝试指定连接名称:php artisan queue:work database
QUEUE_DRIVER=database否则,请确保 EC2 上的 env 文件在这种情况下引用正确的默认 QUEUE_DRIVER
如果您没有在 env 文件中指定队列驱动程序,请检查 config/queue.php 是否有正确的默认设置default' => env('QUEUE_DRIVER', 'database')
在您的 EC2 实例上运行php artisan config:cache以重新加载环境更改。
您只需使用这 2 个命令之一,建议使用它,php artisan queue:work因为它会缓存应用程序状态,但php artisan queue:restart每次推送代码更改时都会运行。
建议安装和配置supervisor:https://laravel.com/docs/5.8/queues#supervisor-configuration
它将负责在 EC2 重新启动或队列故障时重新启动队列工作线程
| 归档时间: |
|
| 查看次数: |
3812 次 |
| 最近记录: |