Archive for the ‘runit’ tag
Thinking Sphinx и runit
Thinking Sphinx является, пожалуй, наилучшим способом использовать Sphinx в Rails-приложении, но предлагаемый по-умолчанию вариант его запуска (rake thinking_sphinx:start) несколько сомнителен для production окружения. Как раз тут приходит на помощь runit.
Супервизор runit - идеальный способ для запуска и управления своими сервисами. Он реализует такой функционал, как:
- превращение любого процесса в демон;
- логирование вывода процесса и ротирование логов;
- запуск, остановка, рестарт, запрос состояния, управляющие скрипты для init.d;
- выключение и запуск сервисов автоматически при появлении новых сервисов в списке либо удалении старых из списка;
- возможность ведения нескольких независимых списков сервисов одновременно (например, для каждого пользователя отдельно и для системы в целом);
- удобный API для управления сервисами.
Звучит отлично! Но как же запустить через него наш Sphinx?