Я начал хостинг сайтов некоторое время назад, используя Cherokee. Для внешних источников (FastCGI и т. Д.) У него есть возможность запустить процесс, если он не может найти работающий на указанном сокете или порту. Это здорово, потому что это означает, что если PHP или сайт Django падает (как они иногда делают), он перезапускает его автоматически.
На новом сервере, использующем PHP-FPM, я не смог использовать Cherokee (в нем есть ошибка с PHP), поэтому я перешел на NGINX. Мне очень нравится NGINX (из-за его стиля конфигурации), но у меня серьезные проблемы с перебоями процессов, которые никогда не появляются. PHP делает это иногда, но сайты Django представляют собой большую проблему. Я создал сценарии инициализации для них, и они запускаются при загрузке, но это не помогает мне, если они выходят из строя между перезагрузками.
Я думаю, что я ищу прокси FastCGI. Что-то, что, подобно Cherokee, знает, какие процессы должны запускаться на каких сокетах / портах, и порождает их по требованию. Существует ли такая вещь? Есть ли способ встроить это в NGINX (для простоты настройки)?
/etc/init.d/apachectl
в него. Вам часто нужно переписать свой собственный простой скрипт запуска для использованияexec
. Хотя мне бы хотелось увидеть еще несколько примеров использования daemontools