第四篇:Content-Encoding:br 是一種什么編碼格式?


一.前言

在之前測試HTTP應答的壓縮過程中無意間發現在Google瀏覽器下出現了 Content-Encoding:br 這種的編碼格式,當時我就納悶了,前面不是一直在研究GZip壓縮嗎?br壓縮又是什么鬼?查了一圈資料才發現 br 居然是比 Gzip 壓縮率更高的算法,接下來我們就來具體看看。

 

 

二.什么是br(Brotli)算法

Google 認為互聯網用戶的時間是寶貴的,他們的時間不應該消耗在漫長的網頁加載中,因此在 2015 年 9 月 Google 推出了無損壓縮算法 Brotli。Brotli 通過變種的 LZ77 算法、Huffman 編碼以及二階文本建模等方式進行數據壓縮,與其他壓縮算法相比,它有着更高的壓塑壓縮效率。啟用 Brotli 壓縮算法,對比 Gzip 壓縮 CDN 流量再減少 20%。

根據 Google 發布的研究報告,Brotli 壓縮算法具有多個特點,最典型的是以下 3 個:

  • 針對常見的 Web 資源內容,Brotli 的性能相比 Gzip 提高了 17-25%;
  • 當 Brotli 壓縮級別為 1 時,壓縮率比 Gzip 壓縮等級為 9(最高)時還要高;
  • 在處理不同 HTML 文檔時,Brotli 依然能夠提供非常高的壓縮率。

Brotli 憑借它優異的壓縮性能迅速占領了市場,從下圖可以看到,除了 IE 和 Opera Mini 之外,幾乎所有的主流瀏覽器都已支持 Brotli 算法。

 

三.如何使用Brotli算法

和 Gzip 壓縮算法一樣,Brotli 壓縮算法也是免費開放給又拍雲 CDN 平台上的所有用戶,同時該特性已默認開啟。

使用又拍雲 CDN Brotli 壓縮算法需要同時滿足三個條件:

  • Content-Type 滿足如下 MIME 列表:
復制代碼
text/plain
text/javascript
text/css
text/xml
text/x-component
application/javascript
application/x-javascript
application/xml
application/json
application/xhtml+xml
application/rss+xml
application/atom+xml
application/x-font-ttf
application/vnd.ms-fontobject
image/svg+xml
image/x-icon
font/opentype
text/html -- default
復制代碼
  • Content-Length 大於 256 字節
  • 客戶端請求頭需攜帶 Accept-Encoding: br


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM