Supervisor - как перезапустить, или остановить
Supervisor - это важная программа, которой я пользуюсь всегда, когда дело доходит до очередей, или консольных программ, требующих постоянной работы в фоне. В прошлых статьях по настройке socket.io и очередям на PHP, как раз и пригодилась утилита - supervisor. В тех статьях была рассмотрена установка supervisor, добавление задач, редактирование. Однако, не менее важной частью считаю рассказать и том, как перезагрузить supervisor, и какие команды для этого существуют.
Как перезапустить supervisor
На самом деле, supervisor позволяет сделать перезагрузку всех процессов несколькими путями.
Для того, чтобы перезапустить все управляемые задачи, добавленные в supervisor нужно выполнить:
service supervisor restart
Для того, чтобы перезагрузить конкретный процесс:
service supervisor restart
где <name>
- имя вашей задачи, которую нужно перезагрузить
Или же, для перезагрузки всех задач:
service supervisor restart all
Эти команды выполняют перезагрузку всех ранее добавленных задач. Не меняя конфигурационные файлы.
Добавление новой задачи
Если вы создали новый конфиг, и хотите тут же его запустить. Или, если вы хотите применить новые изменения к старым конфигам, и перезапустить все задачи, то вы должны выполнить:
service supervisor stop
service supervisor start
Но, если вы не хотите перезапускать все задачи. Если вы просто хотите обновить все конфиги, то используйте эту команду, которая просканирует все команды, и обновит о них данные:
supervisorctl reread
Команда выше только обновит конфиги о задачах, но не запустит их. Для того, чтобы запустить задачи с новыми конфигурационными данными, необходимо дополнительно выполнить:
supervisorctl update
И она перезагрузит все задачи, где конфиги были изменены.
Резюме
Это дополнение к предыдущим статьям. Первая часть описана в большой статье по настройке supervisor для сокет сервера. Это лишь ввод часть того, что умеет supervisor. Потому, документация - наше всё.