http1.0與http1.1的區別

來源:互聯網
上載者:User

一個WEB網站每天可能要接收到上百萬的使用者請求,為了提高系統的效率,HTTP 1.0規定瀏覽器與伺服器只保持短暫的串連,瀏覽器的每次請求都需要與伺服器建立一個TCP串連,伺服器完成請求處理後立即斷開TCP串連,伺服器不跟蹤每個客戶也不記錄過去的請求。但是,這也造成了一些效能上的缺陷,例如,一個包含有許多映像的網頁檔案中並沒有包含真正的映像資料內容,而只是指明了這些映像的URL地址,當WEB瀏覽器訪問這個網頁檔案時,瀏覽器首先要發出針對該網頁檔案的請求,當瀏覽器解析WEB伺服器返回的該網頁文檔中的HTML內容時,發現其中的<img>映像標籤後,瀏覽器將根據<img>標籤中的src屬性所指定的URL地址再次向伺服器發出下載映像資料的請求。

顯然,訪問一個包含有許多映像的網頁檔案的整個過程包含了多次請求和響應,每次請求和響應都需要建立一個單獨的串連,每次串連只是傳輸一個文檔和映像,上一次和下一次請求完全分離。即使影像檔都很小,但是用戶端和伺服器端每次建立和關閉串連卻是一個相對比較費時的過程,並且會嚴重影響客戶機和伺服器的效能。當一個網頁檔案中包含 Applet,JavaScript檔案,CSS檔案等內容時,也會出現類似上述的情況。
為了克服HTTP 1.0的這個缺陷,HTTP 1.1支援持久串連,在一個TCP串連上可以傳送多個HTTP請求和響應,減少了建立和關閉串連的消耗和延遲。一個包含有許多映像的網頁檔案的多個請求和應答可以在一個串連中傳輸,但每個單獨的網頁檔案的請求和應答仍然需要使用各自的串連。HTTP 1.1還允許用戶端不用等待上一次請求結果返回,就可以發出下一次請求,但伺服器端必須按照接收到用戶端請求的先後順序依次回送響應結果,以保證用戶端能夠區分出每次請求的響應內容,這樣也顯著地減少了整個下載過程所需要的時間。基於HTTP 1.1協議的客戶機與伺服器的資訊交換過程。

可見,HTTP 1.1在繼承了HTTP 1.0優點的基礎上,也克服了HTTP 1.0的效能問題。不僅如此,HTTP 1.1 還通過增加更多的要求標頭和回應標頭來改進和擴充HTTP 1.0 的功能。例如,由於 HTTP 1.0不支援Host要求標頭欄位,WEB瀏覽器無法使用主機頭名來明確表示要訪問伺服器上的哪個WEB網站,這樣就無法使用WEB伺服器在同一個IP地址和連接埠號碼上配置多個虛擬WEB網站。在HTTP 1.1中增加Host要求標頭欄位後,WEB瀏覽器可以使用主機頭名來明確表示要訪問伺服器上的哪個WEB網站,這才實現了在一台WEB伺服器上可以在同一個IP地址和連接埠號碼上使用不同的主機名稱來建立多個虛擬WEB網站。HTTP
1.1 的持續串連,也需要增加新的要求標頭來協助實現,例如,Connection 要求標頭的值為Keep-Alive 時,用戶端通知伺服器返回本次請求結果後保持串連;Connection 要求標頭的值為close 時,用戶端通知伺服器返回本次請求結果後關閉串連。 HTTP 1.1還提供了與身份認證、狀態管理和Cache緩衝等機制相關的要求標頭和回應標頭。

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.