簡介
HTTP管線化(英語:HTTP pipelining)是將多個HTTP請求(request)整批提交的技術,而在傳送過程中不需先等待伺服端的回應。
請求結果管線化使得 HTML 網頁載入時間動態提升,特別是在具體有高延遲的連線環境下,如衛星上網。在寬頻連線中,加速不是那么顯著的,因為需要服務端套用 HTTP/1.1 協定:服務端必須按照客戶端的請求順序恢復請求,這樣整個連線還是先進先出的,隊頭阻塞(HOL blocking)可能會發生,造成延遲。未來的HTTP/2.0或者SPDY中的異步操作將會解決這個問題。因為它可能將多個 HTTP 請求填充在一個TCP數據包內,HTTP 管線化需要在網路上傳輸較少的 TCP 數據包,減少了網路負載。
管線化機制須透過永久連線(persistent connection)完成,並且只有 GET 和 HEAD 等要求可以進行管線化,非冪等的方法,例如POST將不會被管線化。連續的 GET 和 HEAD 請求總可以管線化的。一個連續的冪等請求,如 GET,HEAD,PUT,DELETE,是否可以被管線化取決於一連串請求是否依賴於其他的。此外,初次創建連線時也不應啟動管線機制,因為對方(伺服器)不一定支持 HTTP/1.1 版本的協定。
HTTP 管線化同時依賴於客戶端和伺服器的支持。遵守 HTTP/1.1 的伺服器支持管線化。這並不是意味著伺服器需要提供管線化的回覆,而只是要求在收到管線化的請求時候不會失敗。
超文本傳輸協定
超文本傳輸協定(英文: Hyper Text Transfer Protocol,縮寫: HTTP)是一種用於分散式、協作式和超媒體信息系統的套用層協定。HTTP是全球資訊網的數據通信的基礎。
設計HTTP最初的目的是為了提供一種發布和接收HTML頁面的方法。通過HTTP或者HTTPS協定請求的資源由統一資源標識符(Uniform Resource Identifiers,URI)來標識。
HTTP的發展是由蒂姆·伯納斯-李於1989年在歐洲核子研究組織(CERN)所發起。HTTP的標準制定由全球資訊網協會(World Wide Web Consortium,W3C)和網際網路工程任務組(Internet Engineering Task Force,IETF)進行協調,最終發布了一系列的RFC,其中最著名的是1999年6月公布的RFC 2616,定義了HTTP協定中現今廣泛使用的一個版本——HTTP 1.1。
2014年12月,網際網路工程任務組(IETF)的Hypertext Transfer Protocol Bis(httpbis)工作小組將HTTP/2標準提議遞交至IESG進行討論,於2015年2月17日被批准。HTTP/2標準於2015年5月以RFC 7540正式發表,取代HTTP 1.1成為HTTP的實現標準。