web-dev-qa-db-ja.com

EC2 Linux、Nginx、およびChrome

HTTPキープアライブ問題の解決にご協力ください。基本的に、私はnginx(v1.2.6)を実行しているEC2上にAmazon-AMI linux(v2012.09)を持っています。

Chrome(v25.0.1364.99)はHTTPページに正常にアクセスし、約30秒後にサーバーでnetstatによって監視されているように接続が切断されました(理由は不明)。その後、chromeがサーバーから何かを要求した場合、サーバーは何も受信できず、明らかに切断された接続で何かを待つために約1分間タイムアウトします。タイムアウト後、後続の要求は正常に機能します。

keepalive_timeout 70s 60s;で構成されたNginx

cat /proc/sys/net/ipv4/tcp_keepalive_time7200を示しています

簡単なことかもしれませんが、グーグルで同様の問題がたくさん明らかになりましたが、正確ではありません。 ( https://code.google.com/p/chromium/issues/detail?id=274 ここについて読む http://blog.fastmail.fm/2011/06/ 28/http-keep-alive-connection-timeouts / )。

どのような答えが役立ちますか:

  • Chromeからの接続が切断されるのを過度に待機しないようにサーバーの構成を変更する方法

  • どの製品がバグを含んでいるか、またはどのような回避策が利用できるか

chromeは、一種の最後の手段です。応答の待ち時間を短縮し、HTTP接続のキープアライブ時間を少なくとも1分長くしたいので、目的を達成できません。ありがとうございます。

1
Ievgen Lukash

このような環境では、HTTPS接続は30秒後にこっそりと閉じられないため、サイトを完全にHTTPS(実際に計画された)の下に置くと、Chrome Keep = Aliveの問題は発生しなくなりましたそれ自体をKeep-Aliveで1分間使用しますが、これは許容範囲です。

残念ながら、TCPデバッグに投資するリソースがありませんでした。したがって、パズル自体は完全には解決されません。

提案をありがとう!

1
Ievgen Lukash