首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

HTTP 協議演進與工作模式:從 HTTP/0.9 到 1.1 持久連接的關鍵突破

     編輯:Java 相關知識

前言

HTTP(HyperText Transfer Protocol)是應用層協議,基於 TCP 傳輸,主導 Web 瀏覽與資源下載。本文回顧 HTTP 從 0.9 到 1.1 的演進歷程,重點解析 HTTP/1.0 短連接與 HTTP/1.1 持久連接的工作模式差異,及對伺服器負載、頁面載入效能的深遠影響。

一、HTTP 版本演進

  • HTTP/0.9:極簡,僅支援單行請求與 HTML 回應,無頭資訊。
  • HTTP/1.0:引入請求/回應頭、狀態碼、資源重導向等豐富機制。
  • HTTP/1.1:持久連接、請求方法擴充至 8 種(OPTIONS、PUT、DELETE 等)、大量新增頭字段(Connection、快取、認證等)。W3C 已停止 HTTP 核心改進,1.1 為最終版本。

二、HTTP/1.0 短連接模式

流程:建立 TCP → 發送請求 → 接收回應 → 伺服器主動關閉 TCP → 結束。
缺點:頁面包含多張圖片/JS/CSS 時,每個資源需重新建立 TCP 連接(三次交握),嚴重增加伺服器負載與延遲。

三、HTTP/1.1 持久連接模式

核心改進:預設 Connection: Keep-Alive,單一 TCP 連接可傳輸多個請求/回應。
流程:建立 TCP → 循環(請求 → 回應) → 客戶端決定何時關閉。
優勢:複用連接消除重複握手,大幅降低伺服器壓力與頁面載入時間。

四、關鍵頭字段:Connection

  • Connection: Close:強制關閉持久連接,退回 1.0 行為。
  • Connection: Keep-Alive:啟用持久連接(1.1 預設即為 Keep-Alive)。

五、請求方法擴充

HTTP/1.0:GET、POST、HEAD(3 種)。
HTTP/1.1:新增 OPTIONS、PUT、DELETE、TRACE、CONNECT(共 8 種),支援 RESTful 風格 API 設計。

結語

HTTP/1.1 的持久連接是 Web 效能飛躍的關鍵轉折點。理解其運作機制與頭字段控制,對優化網路應用、設計高效 API、排查效能瓶頸具有指導意義。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved