高度なプログラミングのpythonチュートリアルネットワーク接続-tcpロングとショートの接続
長い接続と短い接続TCP
TCPは、実際の読み取りおよび書き込み操作の前に、それは、サーバとクライアント間の接続を確立する必要があります
書き込み操作が完了すると、二つの側面がもはや解放することができ、接続を接続するために必要はありません、
スリーウェイハンドシェイクが接続を確立することによって、あなたは4ウェイハンドシェイクを解放する必要があり、
だから、各リソースの消費量と時間の消費のための接続を確立する必要があります。
下に示すように、TCP通信の全体のプロセス:
1. TCPコネクション短いです
TCPコネクションにより、短いのシミュレーションケース:
クライアントは、サーバーへの接続要求を送信します
サーバーは接続を確立するために、当事者の要求を受け、
クライアントがサーバーにメッセージを送信します
クライアントへのサーバーの応答
完全な読み取りと書き込み、双方がクローズ操作を開始することができ、いつでも
最初のステップ5では、最初のクライアントは、通常はクローズ操作を開始します。もちろん、我々は特別な状況を排除していません。
通常、読み取り専用とクライアント/サーバ間の書き込み操作の短い接続を送信し、上記の説明からご覧ください!
2. TCP長い接続
そして、長期の接続をシミュレートします:
サーバーへのクライアントの接続を開始するために、サーバがリクエストを受信し、双方は、接続の確立クライアントをサーバーにメッセージを送信し、クライアントに応答するサーバーの書き込みが完了すると、接続がクローズされていません...その後の読み取りおよび書き込み操作を長時間操作クライアントが近くにリクエストを送信した後、
3. TCPロング/ショート接続操作
3.1手順の短い接続は、次のとおりです。
データ転送 - - 閉じる...接続を確立するために接続 - 接続の確立データ転送 - クローズ接続
手順接続の長さは3.2です。
接続の確立 - データ転送を...(滞在は接続されている)...データ転送 - クローズ接続
長所と短所の4 TCPロング/ショートの接続
ロングTCP接続は、ますますクローズ操作を保存、廃棄物を削減し、時間を節約することができ設立しました。
顧客が頻繁に要求されたリソースのために、それは長いの接続に適しています。
クライアントとサーバー間の接続はケースを閉じていない場合、問題があるでしょう、
より多くのクライアント接続では、サーバーが運ぶことができませんでした遅かれ早かれ、サーバー側は今回の必要性は、いくつかの戦略を取るとき、
一部は近くない読みと書き込みイベントは、サーバー側のサービスへの悪質な被害接続リードを避けるために限り接続をしました。
条件は、クライアントごとの接続の数の最大長さを制限する、粒子サイズとしてクライアント・マシンを可能にすることができる場合、
これは完全に痛みの卵は、バックエンドクライアントサービスを傷つける避けることができます。
サーバ管理のためのショート接続に簡単、便利なリンク、追加のコントロールを接続されていないがあります。
顧客が頻繁に要求した場合は、TCPおよび開閉動作の確立に時間と帯域幅を浪費することになります。
5. TCPシナリオロング/ショートの接続
ロングの接続は、頻繁に操作のためのポイント通信にポイントを使用し、接続の数はあまりにも頻繁にすることはできません。
各TCP接続は、各操作が最初に接続されている場合、それは、時間がかかります、3ウェイハンドシェイクが必要です
処理速度が大幅に低くなります場合は、切断の各操作の後にそうない、動作し、
プロセスは再び、TCP接続を確立していない時にOKに直接パケットを送信します
例えば:データベースは、長い接続に接続されている接続多い原因短いソケット通信エラーであれば、
そして頻繁にソケット作成は、リソースの無駄です。
WEBサイトのように、HTTPサービスは、サーバーへの接続に長いので、一般的に短いリンクされており、それはいくつかのリソースを消費します、
そして、WEBサイトのようなので、多くの場合、短い接続によって接続されたクライアントの数千または数百万ものは、いくつかのより多くのリソースを節約します、
各ユーザーが1つの接続を占有した場合、その後、あなたが長いと接続し、同時に何千人ものユーザーが存在する場合
今では想像することができます。だから、同時容量が、各ユーザーにも優れて短い頻繁に操作する場合を使用する必要はありません。