Всем привет.
Второй день мучаю Gearman в связке с php. Всё круто но интересует один момент.
Хочу что бы он обрабатывал задачи в фоновом режиме то есть.
Сейчас для того что бы отработать задачу необходимо запустить воркер и он висит в командной строке.
Требуется запустить и закрыть командную строку но воркер должен продолжать работать.
Пробовал делать вывод в /dev/null но это не работает.
Как лучше поступить?
Обязательно использовать supervisord??? Или есть варианты оптимальнее?
Runit (но это аналог supervisord), весьма просто запуск в одну строку, умеет вести лог, запускать процессы от пользователя, в случае падения процесса поднять его, заменять init.d скрипты. насколько я помню написан на C и есть минимум ресурсов.
1) можно кроном запускать воркер, а в нем встроить проверку на количество запущенных воркеров, основанную на pid файлах.
2) супервизором
3) Как вариант, если работа на удаленном сервере — воспользоваться screen/tmux