接続:キープアライブ

研究室では朝の読書は、ヤングは私がプロジェクトの問題を解決しましょう、問題は難しいことではありませんので、私は彼が解決CAPTURE教え、シオマネキ、コンピュータを、彼を失望させたが、それは要求を表示しません、私は、あまりにもフィルタを、それを試してみましたまた、I HTTPプロキシ経由ためシオマネキ方法で、開いていなかった、と突然問題が360であるかもしれないことに気づき、360は360をオフにした後、ブラウザエージェントにサードパーティ製ソフトウェアを防ぐ可能性がある、ブラウザを再起動し、最終的に幸せをキャプチャすることができました。

キープアライブ:私は、目が一つの単語---接続に惹かれ、彼にデバッグプロセスのF12フック禁止キャッシュに語りました

私は、httpは明らかにノーコネクションステートレス、非常に困惑したので、ここで何キープアライブはを参照しますか?

実際には、それはTCP多重化され、すべてのHTTP要求は、3ウェイハンドシェイクのTCPを必要とするリソースと時間の無駄なので、私たちはいくつかの時間のためのTCPチャネル接続を維持することができ、そのようなTCP接続は、数回のHTTPリクエストを維持することができます。


 

これに基づき、我々はまた、いくつかの他の用語をクリアする必要があります:ロングポーリングを、ポーリング期間

TCP多重化への長い接続は、これら2つの言葉は何をするのですか?例を開始します。

ショートポーリングを使用すると、リストのページに今の電力供給を行うように、この詳細画面が在庫(誰もが精通していることを信じて、または淘宝網Jingdongはを開けないようにするには見つけることができるフィールドがあり、我々は理解することは困難ではないと考えていますこのページ)。そして、これはリアルタイムのインベントリの変更、一貫性のあるリアルタイムでサーバメンテナンスと在庫を、どのように達成するために必要な?

ロングポーリングこの時間は、実際には、ロングとショートポーリングポーリングの最大の違いは、クエリ時間の短い方の端に奉仕するポーリングがありました、関係なく、在庫の量が変更されていない、サーバーはすぐに結果を返しません。ポーリングは、長いポーリング長くないが、それは株式の量に変化が検出されない場合、サーバーは、それは時間の現在のリクエストの期間を(この時間は、典型的には数十秒で、タイムアウト時間と呼ばれる)一時停止します。このとき、在庫レベルを検出するために、サーバーは、変更がタイムアウトするまで待つそうでない場合は、すぐに返すように検出され、変更されていません。

もちろん、ロングポーリング要求を使用してクライアントの数が大幅に削減されます(ネットワークトラフィックの節約を意味し、結局、送信されたすべての要求は、ダウンロードクライアントトラフィックのアップロードトラフィックとサーバを占有します)。多数のクライアントがインベントリを要求している場合は、サーバーが現在大きすぎるようにただし、サービスの終了は、要求を中断する圧力を複数のスレッドを使用しています。だから、長いポーリングも適用場面です。


ポーリングと彼らの最も基本的な違いをされた連結の長い長さの下で区別:

最初の違いは、TCP接続が決定されたHTTP接続ヘッダを設定することにより、持続的な接続であるかどうか、判断方法ですが、両側には、有効に設定する必要があります。ラップモードとロングポーリングするかどうか、サーバーが決定へのアプローチに基づいており、クライアントとは関係がありません。

第2の相違点は、所定の長さが接続され、契約によって実現されるために、達成する方法です。ポーリングの長さは、プログラムでリクエストサーバを一時停止手動で行われます。


 

要するに、このことを覚えている:長い接続ではなく、HTTP接続よりも、TCPコネクションです。HTTPプロトコルは、要求/応答モデルに基づいているので、長いサーバーへの応答は、このHTTP接続を介してであるように、TCP接続が双方向チャネルであり、それは、オフ時間の期間にわたって維持され、したがって、実際のTCP接続がされていません接続とロングとショートの接続

おすすめ

転載: www.cnblogs.com/ZoHy/p/11331058.html