首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

HTTP/1.0 對象響應時間小於 HTTP/1.1:請求頭開銷與管線化差異解析

     編輯:程式設計綜合問答

現象:單個對象 (圖片/CSS/JS) 響應時間 HTTP/1.0 < HTTP/1.1,但頁面整體載入 1.1 更快。

原因

  • HTTP/1.0:請求頭極簡 (僅 `GET /path HTTP/1.0\r\n\r\n`),無 `Host`、`Connection`、`User-Agent`、`Accept-Encoding` 等頭部,**解析開銷極小**,服務端處理快,單對象 TTFB 低。
  • HTTP/1.1:**強制 `Host` 頭**,常帶 `Connection: keep-alive`、`Accept-Encoding: gzip, deflate`、`User-Agent`、`Cookie` 等,**請求頭通常 500B-2KB**,服務端解析、路由、壓縮決策耗時更長,導致單對象 TTFB 略高。
  • 頁面級優勢:1.1 支持 **持久連接 (Keep-Alive)** + **管線化** (雖少用) + **分塊傳輸** + **緩存協商** (`ETag`/`If-None-Match`),避免重複 TCP 握手、減少往返,**整體頁面載入顯著快於 1.0 多連接模式**。

驗證方法

# 抓包對比請求頭大小
tcpdump -i eth0 -A -s 0 'port 80' | grep -A 20 'GET /'
# 或瀏覽器 DevTools Network 面板查看 Request Headers 大小

總結:**對象級 1.0 輕量快,頁面級 1.1 連接復用強**,現代 Web 均用 1.1/2/3。

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