【问题标题】:avoiding php artisan queue:work : Queue Driver - Redis or Database (Laravel 5.4)避免 php artisan queue:work : 队列驱动程序 - Redis 或数据库 (Laravel 5.4)
【发布时间】:2017-06-24 21:33:05
【问题描述】:

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

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

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

【问题讨论】:

    标签: linux laravel-5 redis laravel-5.4 laravel-queue


    【解决方案1】:

    Laravel 文档用主管对此进行了介绍。

    见:Laravel Supervisor configuration

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

    编辑:

    见:Supervisor documentation

    基本上对于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 文档中给出的示例),这是逐步处理的:

    Supervisor: creating-a-configuration-file

    并创建服务:Setup Supervisor

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

    service supervisord start
    

    【讨论】:

    • 我会调查的。但是,如果您可以使用确切的步骤编辑您的答案?我正在使用 CentOS6 。我不确定如何进行配置。 laravel 文档很简短
    猜你喜欢
    • 2017-02-10
    • 2023-03-09
    • 1970-01-01
    • 1970-01-01
    • 2016-03-04
    • 2021-07-10
    • 2018-01-15
    • 1970-01-01
    • 2016-08-20
    相关资源
    最近更新 更多