1. 程式人生 > >新年新技術:HTTP/2

新年新技術:HTTP/2

新的一年,專案也要帶著發展的眼光往前走,得跟上潮流,當然前提是自己真的用的上。 用的上用不上都得先簡單瞭解下。

2月下旬Google釋出了首個基於HTTP/2的RPC框架GRPC,它是基於HTTP/2的,所以先了解下它,後續等深入研究了再回頭說說GRPC。

What’s new in HTTP/2?

is binary, instead of textual

HTTP/2基於二進位制而不是文字,二進位制協議解析起來效率會更高,而且不那麼容易出錯,此外原來基於HTTP/1.x協議程式可以用多種方式解析訊息體, 但是HTTP/2只有一種方式,這點對實現者來說負擔更輕點。

is fully multiplexed, instead of ordered and blocking

HTTP/1.x實際上是一個請求一個連線,因此瀏覽器為了提高頁面的載入速度都會開多個連線,但是這也是有限制的(不同的瀏覽器不一樣)。 太多的連線帶來的是網際網路上更多的擁塞和佔用了更多的資源,這本身是低效而且是不公平的(對其他協議來說)。

HTTP/2的一個重要目的是讓瀏覽器和伺服器之間只建立一個連線,用一個連線實現了並行的請求處理,這就是multiplexing。

因為基於二進位制所以telnet無法使用HTTP/2。

can therefore use one connection for parallelism

上面已經提到了,HTTP/2只允許瀏覽器和伺服器之間建立一個連線,用一個連線實現並行,減少TCP連線數。

uses header compression to reduce overhead

現在網頁載入是資源密集型的,一個頁面通常有很多資源要載入,每次請求的頭部資料不可忽視(尤其是Cookies), 加上TCP的Slow Start機制(一種擁塞控制機制)會導致往返次數加大。壓縮可以有效的減少包分組的數量,從而減少延遲,尤其是在移動端上。

因為GZIP壓縮有安全性隱患,所以HTTP/2自己實現了一套壓縮演算法——HPACK。

allows servers to “push” responses proactively into client caches

目前伺服器需要瀏覽器解析頁面後再發送新請求來獲取js,css,圖片等資源。HTTP/2為了優化這個開銷,可以提前將這些資源“推送”到客戶端的快取中。

目前HTTP/2的使用情況?

Github上專門有一個Wiki頁跟蹤了有哪些HTTP/2的實現。我們比較關心的是Google釋出的GRPC。

http2-impl.png

官方文件

上述內容都是官方文件的內容,深入瞭解最好方式還是看官方的文件。

相關推薦

新年技術:HTTP/2

新的一年,專案也要帶著發展的眼光往前走,得跟上潮流,當然前提是自己真的用的上。 用的上用不上都得先簡單瞭解下。 2月下旬Google釋出了首個基於HTTP/2的RPC框架GRPC,它是基於HTTP/2的,所以先了解下它,後續等深入研究了再回頭說說GRPC。 What’s new in HTTP/2?

新年技術:MongoDB 3.0

前一篇介紹了HTTP/2,這一篇簡單介紹下3月3號釋出的MongoDB 3.0。 What’s new in MongoDB 3.0? 新的儲存引擎WiredTiger MongoDB 3.0的儲存引擎是外掛式的,預設為新增的WiredTiger。WiredTiger相比原來的MMAPv1引擎的優點

2017-2018-2 《密碼與安全技術》第2周作業

對等網絡 分布 數字貨幣 轉讓 基本 單元 分布式 概念 解決 20179226 2017-2018-2 《密碼與安全新技術》第2周作業 課程:《密碼與安全新技術》 班級: 1792 姓名: 任逸飛 學號:20179226 上課教師:謝四江 上課日期:2018年3月29日

2017-2018-2 20179215《密碼與安全技術》 第三次作業

code 視頻監控 存在 模態 進入 有效 保護 總結 跨平臺 2017-2018-2 20179215 《密碼與安全新技術》 第三次作業 課程:《密碼與安全新技術》 班級: 201792 姓名: 袁琳 學號:20179215 上課教師:謝四江 上課日期:2018年3月29

2017-2018-2 20179223《密碼與安全技術》第四次作業

大數 des 發展 alt work 安全性 key 認證 sign 課程:《密碼與安全新技術》 班級:1792班 姓名:劉霄 學號:20179223 上課老師:謝四江 上課日期:2018年4月26日 必修/選修:必修 學習總結 本次課程由管理系劉飈老師為我們講解有關——分

2017-2018-2 《密碼與安全技術》論文總結

完整 man 安全問題 網絡 mina 強制 詳細說明 上下 each 20179226 2017-2018-2 《密碼與安全新技術》論文總結 課程:《密碼與安全新技術》 班級: 1792 姓名: 任逸飛 學號:20179226 上課教師:謝四江 上課日期:2018年6月7

2017-2018-2 20179223 《密碼與安全技術專題》 第7周作業

工作人員 開發 轉化 角色 自適應 In 探討 思考 目的 課程:《密碼與安全新技術》 班級:2017級92班 學號:20179223 小組成員:劉霄、王孟亞 上課教師:謝四江 上課日期:2018年6月21日 必修/選修: 必修 論文題目:CAAC - 智能基礎設施中緊急

2017-2018-2 20179225 《密碼與安全技術專題》 第7周作業

war http 演講 實施 同學 給他 智慧 直接 存儲 課程:《密碼與安全新技術》 班級:2017級92班 學號:20179225 小組成員:劉霄、王孟亞 上課教師:謝四江 上課日期:2018年6月21日 必修/選修: 必修 論文題目:CAAC - 智能基礎設施中緊急

20179212 2017-2018-2 《密碼與安全技術》課程總結

局限 背景 挖掘 學習 簡單 平臺 第一次 錯誤 問控制 20179212 2017-2018-2 《密碼與安全新技術》課程總結 課程:《密碼與安全新技術》 班級: 1792 姓名: 郭永健 學號: 20179212 上課教師:謝四江 必修/選修: 必修 上次的博客因為準備

軟工個人專案-2.需求分析+學習技術

需求分析其實就是作業要求劃重點,不在這裡贅述了。 Code Quality Analysis 程式碼分析的示例 c + + 專案 (一個walkthrough) 程式碼分析 C/c + + 概述(看不太明白) 快速入門:C/C++ 程式碼分析(如何自定義規則集,篩選和壓制警

HTTP/2 頭部壓縮技術介紹

提醒:本文最後更新於 1123 天前,文中所描述的資訊可能已發生改變,請謹慎使用。 我們知道,HTTP/2 協議由兩個 RFC 組成:一個是 RFC 7540,描述了 HTTP/2 協議本身;一個是 RFC 7541,描述了 HTTP/2 協議中使用的頭部壓縮技術。本文將通過實際案例帶領大家詳細

啟動僅需2.3ms比Docker還快的技術,能否改變容器市場格局?_Kubernetes中文社群

容器技術自2013年Docker容器問世以來一路高歌猛進紅遍大江南北,老技術新Docker給各個行業帶來不少便利,一時間VM與Docker成大家普遍對比物件,本質上IaaS層和PaaS層無可比性,但他們都能實現資源和系統環境隔離等特性,與虛擬機器相比,Docker更顯優勢,有著更輕量、更快捷、

【傳智播客鄭州校區分享】HTTP/2技術整理

“HTTP管道”技術實現了客戶端向伺服器並行傳送多個請求。而伺服器也是可以並行處理多個請求的。這麼一來,不就可以多路複用了嗎?但是,HTTP/1.x有嚴格的序列返回響應機制,通過TCP連線返回響應時,就是必須一對一,前一個響應沒有完成,下一個響應就不能返回。所以使用“HTTP管道”技術時,萬一第一個響應時間很

HTTP/2技術整理

1. HTTP協議發展 1.1. HTTP的歷史 HTTP於1989年正式釋出,也就是HTTP/1啦,在經歷10年後於1999年更新出了HTTP/1.1,也是我們現在普遍使用的版本。 在2015年初HTTP/2標準正式發表,取代HTTP1.1成為HTTP的實現標準。也就是說

比特幣技術|比特幣中國官網

利潤 需要 公司 影響 投資者 網站 社區 聯網 勝利 親愛的朋友們! 改善您生活最好方式之一,是每天在不斷地改善自己的所想法,感情,話與決定!如果您對額外的收入來源有興趣的話(類似互聯網交易,交易所交易,投資)那,歡迎您參與國際儲備體IRS公司。由於我們一直在努力為了

ajax無刷技術

spa form mar 數據 change cati tex microsoft activex 第一步:創建ajax引擎 var xmlhttp=""; if(window.XMLHttpRequest){ xmlhttp=new XMLHttpRequest();

windows下使用Wireshark調試chrome瀏覽器的HTTP/2流量

ogl tps bug files 環境變量設置 erp res -m brush 1.在Wireshark官網(https://www.wireshark.org/#download)下載對應的Wireshark安裝包,進行安裝 2.增加系統環境變量設置(計算機 -- 右

技術探究之 GraphQL

.cn 是我 結構 返回 工作量 服務端 大量 語言 我們 What? GraphQL 是一種類似於 SQL 的結構化查詢語言,由 facebook 於2012年創造,於2015年開源。SQL 在服務端定義,GraphQL 在客戶端定義,也就是說 GraphQ

如何快速學習一門技術(轉載)

修改 操作 如何快速 mongodb rom try 深入 tro 分享 前幾天fork了Ruby China的源碼,面對陌生的Ruby技術棧,一頭霧水。 我fork它並不單為了學習,而是要在最短的時間搭建起我腦海中的社區網站。所以我不可能針對每一門新技術都去買一本

2015年Android開發技術盤點

youtube har pro ner j2e bind cor compile -m 又到年末。 利用中午的時間,匯總盤點一下今年Android開發方面的新技術。感覺如今Android開發沒有曾經那麽純粹了,出現了非常多新的開發模式。2015年影響比較普遍的