Обход очереди php artisan: работа: Драйвер очереди - Redis или база данных (Laravel 5.4)
В настоящее время я использую базу данных в качестве драйвера очереди, я установил Laravel 5.4 на ПК с Windows 10. Для обработки очередей я использую php artisan queue:work
который был полностью в стадии разработки. Теперь проект полностью готов и его необходимо развернуть на Linux Server (выделенный). Я не уверен, как избежать запуска команды php artisan queue:work
на терминале для обработки почтовых заданий?
Я однажды развернул на общем хостинге и использовал задания cron, но теперь у меня есть выделенный сервер, и я думаю, что я смогу использовать что-то другое для запуска заданий, я также думал об использовании Redis в качестве драйвера очереди, а не базы данных в качестве драйвера очереди
Мне нужно предложение о том, что лучше. И как избежать php artisan queue:work
на выделенном сервере? Нужно ли писать небольшой скрипт, чтобы убедиться, что задания выполняются в фоновом режиме как служба.
1 ответ
Документация Laravel покрывает это с руководителем.
Смотрите: Настройка Laravel Supervisor
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