运行Laravel Horizo​​n作为后台服务

web*_*Dev 6 php laravel-queue laravel-jobs laravel-5.5 laravel-horizon

我的问题是,运行Laravel Horizo​​n工作人员的最佳和简单方法是什么?

我的技术堆栈

  • Laravel 5.5
  • 地平线
  • Redis队列
  • Centos下

我已经阅读了文档https://laravel.com/docs/5.5/horizo​​n

如何在Supervisor配置上方的链接上提到设置以下主管

[program:horizon]
process_name=%(program_name)s
command=php /home/forge/app.com/artisan horizon
autostart=true
autorestart=true
user=forge
redirect_stderr=true
stdout_logfile=/home/forge/app.com/horizon.log
Run Code Online (Sandbox Code Playgroud)

注意:我有自己的自定义构建服务器和php 7.1,后来我安装了Horizo​​n来运行我的作业并维护队列.

有关如何运行Workers的任何建议或我应该在何处配置Supervisor配置

Rob*_*ert 12

确保安装了主管:

对于debian/ubuntu:

apt install supervisor
Run Code Online (Sandbox Code Playgroud)

CentOS的:

easy_install supervisor
Run Code Online (Sandbox Code Playgroud)

要么

yum install supervisor
Run Code Online (Sandbox Code Playgroud)

你也可以这样做:

systemctl enable supervisord
Run Code Online (Sandbox Code Playgroud)

确保主管在启动时运行


现在在/etc/supervisor/conf.d/named中创建一个新文件horizon.conf并添加上面的配置.

现在做:

sudo supervisorctl reread
Run Code Online (Sandbox Code Playgroud)

重读配置

sudo supervisorctl update
Run Code Online (Sandbox Code Playgroud)

要重新加载配置并重新启动该过程

sudo supervisorctl start all
Run Code Online (Sandbox Code Playgroud)

要么

sudo supervisorctl start horizon
Run Code Online (Sandbox Code Playgroud)

开始视野

  • 请注意,如果您有一个 `/etc/supervisord.d/` 文件夹;扩展名应该是`.ini` (2认同)