Запуск Unicorn за Amazon ELB

Мы изучаем возможность использования AWS для нашей среды хостинга и настроили тестовый VPC. На данный момент мы запускаем приложение rails с использованием Unicorn за nginx. Пытаясь установить наши серверы за ELB, их все время выгоняли из-за «неудачных проверок работоспособности».

Однако проверки работоспособности возвращают статус 200 и вскоре вернутся к активному статусу после требуемого количества статусов 200. Как только запросы начнут попадать на сервер, ELB снова сбросит сервер. Насколько я могу судить, это связано с тем, что единорог не поддерживает соединения открытыми и закроет соединение после завершения запроса. ELB это явно не нравится со страницы устранения неполадок: http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/ts-elb-healthcheck.html

Правильно ли я, что в этом проблема? Есть ли способ обойти это без настройки дополнительных серверов nginx? Хорошо ли работает какая-либо альтернатива Unicorn с Amazon ELB?


person despotes    schedule 07.02.2014    source источник


Ответы (1)


Я просто провел день в слезах, пытаясь заставить Gunicorn (основанный на питоне) работать за ELB. Похоже, он отлично работает за nginx (скрестив пальцы). Убедитесь, что проверка работоспособности эльба не касается единорога. Он должен пройти через nginx.

Насколько я понимаю, стиль единорога - получить запрос, обработать его и двигаться дальше. ELB хотят, чтобы соединение оставалось открытым для повышения эффективности. Nginx может без проблем обрабатывать множество подключений.

person TheHandofTheKing    schedule 06.06.2014