Связь между nginx и Varnish

Я использую nginx в качестве обратного прокси с лаком в фоновом режиме. У меня ЛАМПА заправляется лаком. Проблема, которую я вижу на сервере Varnish, заключается в том, что соединение с nginx устанавливается каждый раз, когда обрабатывается запрос.

Мы обслуживаем более 300 запросов в секунду и видим что-то вроде:

netstat -an|awk '/tcp/ {print $6}'|sort|uniq -c
      2 ESTABLISHED
      1 FIN_WAIT1
      7 LISTEN
      1 SYN_RECV
  43187 TIME_WAIT

Это, конечно, нежелательно. Лучше всего, если мы настроим туннель или соединение между nginx и лаком, и вся связь будет происходить через это статическое соединение. Я не совсем уверен, как именно это можно сделать или есть ли лучшие способы сделать это.

Что еще я могу сделать здесь?

Спасибо

1 ответ

Решение

Nginx поддерживает только HTTP/1.0 между собой и внутренними серверами, поэтому по умолчанию протокол HTTP не поддерживается:(

Есть много странных и замечательных сторонних модулей, которые могут помочь, но до сих пор я нашел только поддержку keepalive для memcache и redis, без HTTP

Другие вопросы по тегам