Мне нужно установить соединение с внешним сервисом в моем приложении Rails. Я делаю это в инициализаторе. Проблема заключается в том, что сервисная библиотека использует многопоточную доставку (которая мне нужна, потому что у меня не получается, чтобы она затормаживала запросы), но жизненный цикл Unicorn приводит к тому, что поток прерывается, и работники его никогда не видят. Одно из решений состоит в том, чтобы вызывать новое соединение при каждом запросе, но это излишне расточительно.
Оптимальным решением является настройка соединения в блоке after_fork в конфигурации единорога. Проблема в том, что он не вызывается вне единорога, что означает, что мы не можем протестировать его в средах разработки / тестирования.
Итак, вопрос в том, как лучше всего определить, работает ли приложение Rails под Unicorn (основной или рабочий процесс)?