Как управлять фоновыми rake task'ами из админки?

Никак не могу разобраться. Я сделал несколько rake task'ов которые должны работать в фоне как зомби процессы. Т.е. не запускаться по расписанию, а работать постоянно.

Я хочу в веб интерфейсе (у себя в админке) видеть статус этих процессов, и при необходимости останавливать процесс или запускать его. Как это реализовать правильно?
Буду признателен за развёрнутый ответ.
  • Вопрос задан
  • 2466 просмотров
Решения вопроса 1
@Finist
Никогда такого не делал, но теоретически можно так: каждый процесс создает файл процесс.pid в который кладет свой pid, далее в коде админки смотрим внутрь каждого такого файла и потом ищем процесс с таким pid, если процесс есть сервис работает, если нет, не работает
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
viktorvsk
@viktorvsk
Решение в лоб - сделать новую сущность, типа RakeTaskManager
Запускаются и обрубать таски из админки. При запуске в базу пишется активный статус. при выключении - неактивный.
Можно писать в базу айди процесса, а там уже пусть менеджер процессов какой-нибудь разбирается
Возможно, есть решения лучше, но тогда условия надо конкретней

P.S.
Вообще посмотрите в сторону God, Monit. Возможно, вам что-то подойдет. Возможно, есть готовые решения с веб-интерфейсом.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы