圖解HTTP(4)

CopperDong發表於2018-07-01

九、基於HTTP的功能追加協議

     HTTP的瓶頸

  • 一條連線上只可傳送一個請求
  • 請求只能從客戶端開始。客戶端不可以接收除響應以外的指令
  • 請求/響應首部未經壓縮就傳送。首部資訊越多延遲越大
  • 傳送冗長的首部。每次互相傳送相同的首部造成的浪費較多
  • 可任意選擇資料壓縮格式。非強制壓縮傳送

    Ajax的解決方法:名為XMLHttpRequest的API,通過JS呼叫就能和伺服器進行HTTP通訊。藉由這種手段,就能從已載入完畢的Web頁面上發起請求,只更新區域性頁面。但仍可能會導致大量請求產生

    Comet的解決方法:一種通過延遲應答,模擬實現伺服器端向客戶端推送的功能。但為了維持連線會消耗更多的資源。

     SPDY的目標:處於持續開發狀態中的SPDY協議,正是為了在協議級別消除HTTP所遭遇的瓶頸。


    WebSocket:進行全雙工通訊。由於是建立在HTTP基礎上的協議,因此連線的發起方仍是客戶端,而一旦確立WebSocket通訊連線,不論伺服器還是客戶端,任意一方都可直接向對方傳送報文。特點有推送功能和減少通行量。

    握手.請求:需要用到HTTP的Upgrade首部欄位,告知伺服器通訊協議發生改變,以達到握手的目的。

    握手.響應:Sec-WebSocket-Accept欄位,成功握手後,通訊時不再使用HTTP的資料幀,而採用WebSocket獨立的資料幀。

    HTTP/2.0:2014年推出

    WebDAV:一個可對Web伺服器上的內容直接進行檔案複製、編輯等操作的分散式檔案系統。

十、構建Web內容的技術

    HTML+CSS +JS

十一、Web的攻擊技術

    主動攻擊

    被動攻擊


相關文章