【发布时间】:2019-02-03 23:11:29
【问题描述】:
我在共享托管服务上安装了我的 Laravel 5.6 应用程序。但是我的托管公司对我的应用程序的 CPU 使用率不满意。无论我是手动还是通过 cron 作业杀死队列工作人员,都会在杀死队列工作人员时出现这种高 CPU 使用率。 有人可以解释一下为什么这个 'php artisan queue:restart' 需要这么多 CPU 时间吗?如果可能的话,我该如何减少?
重启:
cd /home/xxxxxx/rdw_laravel/; /usr/local/bin/php72 artisan queue:restart >/dev/null 2>&1
激活队列工作者:
cd /home/xxxxxx/rdw_laravel/; /usr/local/bin/php72 artisan queue:work --daemon
【问题讨论】:
-
你能分享你的配置吗?你是如何启动队列的,如果 queue:worker 进程失败,你如何确保它重新启动(即你如何补充 supervisord / systemd)。
-
我通过 CRON 安排了重启,每天 23:55 开始。 cron 命令的内容如下: cd /home/xxxxxx/rdw_laravel/; /usr/local/bin/php72 artisan queue:restart >/dev/null 2>&1 然后,3分钟后队列再次启动: cd /home/myseabou/rdw_laravel/; /usr/local/bin/php72 artisan queue:work --daemon 目标是获得将在夜间执行的作业的实际版本。通过 kernel.php 安排了大约 20 个作业。我读了一些关于需要清除内存的内容,这有效果吗?
-
请使用编辑功能编辑您的原始帖子。还包括如何启动队列工作人员。
-
还需要补充什么吗?
-
所以你只有一个队列工作者,对吗?同时添加 Laravel 版本。
标签: laravel queue cpu laravel-5.6