Головоломка HTTP Keep-Alive с EC2 Linux, Nginx и Chrome
Пожалуйста, помогите решить проблему поддержки HTTP. В основном, у меня есть amazon-ami linux (v2012.09) на EC2 под управлением nginx (v1.2.6).
Chrome (v25.0.1364.99) получает доступ к HTTP-странице в обычном режиме, затем примерно через 30 секунд соединение обрывается (неизвестно почему), что отслеживается сервером netstat
, После этого, если chrome запрашивает что-то с сервера, он не может получить что-либо и время ожидания около минуты, ожидая чего-то по явно нарушенному соединению. После истечения времени ожидания последующие запросы работают нормально.
Nginx настроен с keepalive_timeout 70s 60s;
cat /proc/sys/net/ipv4/tcp_keepalive_time
шоу 7200
Это может быть что-то простое, но поиск в Google выявил много подобных проблем, но не совсем. ( https://code.google.com/p/chromium/issues/detail?id=27400 читать здесь http://blog.fastmail.fm/2011/06/28/http-keep-alive-connection-timeouts/).
Какие ответы будут полезны:
Как изменить конфигурацию сервера, чтобы избежать чрезмерного ожидания при обрыве соединения с Chrome
Какой продукт может содержать ошибку или какой обходной путь может быть доступен
Отключить поддержку активности для Chrome - это последнее средство для решения проблемы: поскольку оно не отвечает цели, поскольку я хочу уменьшить задержку ответа и увеличить время поддержки HTTP-соединения, по крайней мере, одну минуту. Спасибо
1 ответ
В такой среде HTTPS-соединение не закрывается скрытно через 30 секунд, поэтому, когда я помещаю сайт полностью под HTTPS (который фактически планировался), проблема Chrome Keep=Alive больше не проявляется с Keep-Alive в течение минуты, что приемлемо.
К сожалению, у меня не было ресурсов, чтобы инвестировать в отладку TCP. Так что загадка не решена полностью, как таковая.
Большое спасибо за предложения!