Какая альтернатива есть Nginx, который поддерживает поддержку HTTP между бэкэндами?
Недавно я задал вопрос о том, как сохранить внутреннее соединение с помощью Nginx, но обнаружил, что это все равно невозможно,
Это HTTP/1.0 прокси без возможности поддерживать запросы еще. (В результате серверные соединения создаются и уничтожаются при каждом запросе.)
Сейчас все работает нормально (поскольку соединение между клиентом и Nginx сохраняется, а результат просто тот же), но я не хочу устанавливать новое соединение каждый раз, когда поступает новый запрос, даже если он включен доменный сокет unix.
Итак, какое программное обеспечение (желательно с открытым исходным кодом и не слишком утомительное для настройки) вы рекомендуете для создания таких соединений?
4 ответа
Я думаю, что они работают над тем, чтобы поместить это в haproxy.
Имейте в виду, что настройка tcp в локальной сети (= низкая задержка) обычно не является проблемой, все современные операционные системы хорошо сработали. Конечно, было бы приятнее просто иметь открытые бэкэнд-соединения, но это делает код внешнего интерфейса (в данном случае nginx или haproxy) намного более сложным и удивительным образом.
Apache Traffic Server - это прокси-сервер HTTP 1.1, как я помню, как передний, так и внутренний. Также кеш и статический веб-сервер.
Я бы проголосовал за лак, особенно если вам не нужен SSL или вы хотите запустить что-то еще напрямую на 443 для службы HTTPS. http://www.varnish-cache.org/
Это зависит от того, какое приложение работает за вашим nginx. Я бегал с единорогом позади него и использовал сокет UNIX. Это работает как шарм. Сейчас я запускаю приложение Jruby с Trinidad, которое работает по HTTP, что вроде работает. Существует модуль mod_ajp для nginx, который вы сможете использовать, если вы запускаете свое серверное приложение в Tomcat. Afaik поддерживает постоянную связь AJP.