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

标签 php laravel-5.5 laravel-queue laravel-jobs laravel-horizon

我的问题是运行基于 Laravel Horizo​​n 的 job workers 的最好和最简单的方法是什么?

我的技术栈

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

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

如何按照上面的链接设置跟随主管
主管配置

[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

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

关于如何运行 Workers 或者我应该在 Supervisor Configuration 上面的什么地方配置有什么建议吗?

最佳答案

确保你安装了 supervisor:

对于 debian/ubuntu:

apt install supervisor

中心:

easy_install supervisor

yum install supervisor

您还可以:

systemctl enable supervisord

确保主管在启动时运行


现在在/etc/supervisor/conf.d/中新建一个名为horizo​​n.conf的文件,并添加上面的配置。

现在做:

sudo supervisorctl reread

重读配置

sudo supervisorctl update

重新加载配置并重新启动进程

sudo supervisorctl start all

sudo supervisorctl start horizon

开始地平线

关于php - 将 Laravel Horizo​​n 作为后台服务运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47911723/

相关文章:

php - 如何通过子类设置/修改父类变量?

php - 点击图片上传

php - mysqli_query 上的 undefined variable

javascript - 我应该如何为每个ajax函数调用相同的ajax路由url,即使它位于laravel 5.5中的另一个 Controller 中

php - 我怎样才能只运行一次 Laravel 队列?

laravel - 是队列 :restart laravel command necessary?

php - 垂直显示 mysql 表 - 用于比较或打印目的

php - 如何使用 Passport 在 Laravel API 中获取当前用户?

php - Laravel:使用不同的参数打印当前路线

laravel-5 - 如何在指定队列运行 Laravel 作业