HTTP 永続接続とパイプライン

Sep 08, 2018 pm 05:45 PM

1. 永続的な接続とは何ですか? (キープアライブモード)
HTTP1.1 では、デフォルトの接続が長時間接続 (HTTP 永続接続、永続接続とも訳されます) を維持することを規定しており、データ送信が完了した後、TCP 接続は切断されません (RST パケットはありません)。が送信され、4 ウェイ ハンドシェイクは送信されません)、待機します。このチャネルを引き続き使用して、同じドメイン名でデータを送信します。その逆は、短い接続です。

HTTP バージョン 1.1 は永続的な接続をサポートしますが、バージョン 1.0 はサポートしません。
非永続的な接続との違い:
永続的な接続により、クライアントとサーバー間の接続が有効なままになり、接続を再確立する必要がなくなります。接続の確立と終了の遅延が大幅に減少します。 HTTP 接続は TCP プロトコルに基づいています。TCP 接続の確立には 3 回のハンドシェイクが必要で、TCP 接続の終了には 4 回のウェーブが必要です。これらはすべて時間がかかります。

2. パイプラインとは パイプライン メカニズムは、永続的な接続を通じて完了する必要があります (HTTP/1.0 はサポートしません)
永続的な接続を使用する場合、特定の接続メッセージの配信は
リクエスト 1 -> リクエスト 2 -> リクエスト 2 と同様です。
リクエスト 1 -> リクエスト 2 -> リクエスト3 -> 応答 1 -> 応答 2 -> 応答 3

[注]

a 永続的接続の欠点の 1 つは、リクエストと応答が連続していることです。実行されると、リクエスト 2 はリクエスト 1 への応答が受信された後にのみ送信され、パイプライン化では次のリクエストに進むために前のリクエストの応答を待つ必要はありません。リクエストの送信を並行して実装します。

b. パイプライン化できるのは GET および HEAD 要件のみですが、POST は制限されています


c. 相手 (サーバー) が必ずしもサポートしているとは限らないため、パイプライン メカニズムを開始しないでください。 HTTP/1.1 バージョンのプロトコル。HTTP1.1 では、サーバーがパイプライン処理をサポートする必要がありますが、パイプライン要求が失敗しないことだけが必要です。また、エージェントはパイプライン処理を必要としません。サポートは良好ではなく、最新のブラウザーである Chrome と Firefox はデフォルトでパイプライン サポートを有効にしません。

以上がHTTP 永続接続とパイプラインの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

http ステータス コード 520 は何を意味しますか? http ステータス コード 520 は何を意味しますか? Oct 13, 2023 pm 03:11 PM

http ステータス コード 520 は何を意味しますか?

Web ページのリダイレクトの一般的なアプリケーション シナリオを理解し、HTTP 301 ステータス コードを理解する Web ページのリダイレクトの一般的なアプリケーション シナリオを理解し、HTTP 301 ステータス コードを理解する Feb 18, 2024 pm 08:41 PM

Web ページのリダイレクトの一般的なアプリケーション シナリオを理解し、HTTP 301 ステータス コードを理解する

Nginx プロキシ マネージャーを使用して HTTP から HTTPS への自動ジャンプを実装する方法 Nginx プロキシ マネージャーを使用して HTTP から HTTPS への自動ジャンプを実装する方法 Sep 26, 2023 am 11:19 AM

Nginx プロキシ マネージャーを使用して HTTP から HTTPS への自動ジャンプを実装する方法

httpリクエスト415エラーの解決策 httpリクエスト415エラーの解決策 Nov 14, 2023 am 10:49 AM

httpリクエスト415エラーの解決策

httpステータスコード403とは何ですか? httpステータスコード403とは何ですか? Oct 07, 2023 pm 02:04 PM

httpステータスコード403とは何ですか?

クイックアプリケーション: PHP 複数ファイルの非同期 HTTP ダウンロードの実践的な開発事例分析 クイックアプリケーション: PHP 複数ファイルの非同期 HTTP ダウンロードの実践的な開発事例分析 Sep 12, 2023 pm 01:15 PM

クイックアプリケーション: PHP 複数ファイルの非同期 HTTP ダウンロードの実践的な開発事例分析

C# における一般的なネットワーク通信とセキュリティの問題と解決策 C# における一般的なネットワーク通信とセキュリティの問題と解決策 Oct 09, 2023 pm 09:21 PM

C# における一般的なネットワーク通信とセキュリティの問題と解決策

C++ を使用して HTTP ストリーミングを実装するにはどうすればよいですか? C++ を使用して HTTP ストリーミングを実装するにはどうすればよいですか? May 31, 2024 am 11:06 AM

C++ を使用して HTTP ストリーミングを実装するにはどうすればよいですか?

See all articles