0

我目前正在使用数据库作为我的队列驱动程序,我已经在 Windows 10 PC 上安装了 Laravel 5.4。为了处理我一直在使用的队列php artisan queue:work,这在开发阶段完全没问题。现在,项目已经完全准备就绪,需要部署在 Linux 服务器(专用)上。我不知道如何避免php artisan queue:work在终端上运行命令以处理邮件作业?

我已经在共享主机中部署过一次并且我使用过 cron 作业,但是现在我有专用服务器,我想我应该能够使用其他东西来运行作业,我还考虑使用 Redis 作为队列驱动程序而不是数据库作为队列驱动程序

我需要一些关于什么是最好的建议。以及如何避免php artisan queue:work在专用服务器上?我是否需要编写小脚本以确保作业在后台作为服务运行。

4

1 回答 1

1

Laravel 文档与主管一起涵盖了这一点。

请参阅:Laravel 主管配置

Supervisor 是一个进程监视器,它确保您的队列命令(或任何其他命令)被执行并在它死亡时重新启动。

编辑:

请参阅:主管文档

基本上对于centos,你可以使用yum:

yum install supervisor

易于安装

// required for easy_install (if not installed already)
yum install python-setuptools     
// install supervisor
easy_install supervisor

或点

pip install supervisor

之后,它只是创建您的配置(基于 Laravel 文档中给出的示例),这是逐步处理的:

主管:创建配置文件

并创建服务:Setup Supervisor

之后,您可以使用以下命令启动服务:

service supervisord start
于 2017-06-24T12:55:57.260 回答