Brotli
Brotli是一个Jyrki Alakuijala和Zoltán Szabadka开发的开源数据压缩程序库。[4][5]Brotli基于LZ77算法的一个现代变体、霍夫曼编码和二阶上下文建模。
開發者 | Jyrki Alakuijala和Zoltán Szabadka |
---|---|
穩定版本 | 1.0.2 (2017年9月29日[1]) |
源代码库 | |
编程语言 | C[2][lower-alpha 1] |
网站 | github |
在Chrome、Opera和Firefox中,它已被用于加速万维网的传输速度。[6]类似Google的压缩算法zopfli,brotli这个名字来自瑞士的烘培产品brötli。[7]
演变
Brotli最初发布于2015年,用于网络字体的离线压缩。[8]Google软件工程师在2015年9月发布了包含通用无损数据压缩的Brotli增强版本,特别侧重于HTTP压缩。其中的编码器被部分改写以提高压缩比,编码器和解码器都提高了速度,流式API已被改进,增加更多压缩质量级别。新版本还展现了跨平台的性能改进,以及减少解码所需的内存。[7]
与常见的通用压缩算法不同,Brotli使用一个预定义的120千字节字典。该字典包含超过13000个常用单词、短语和其他子字符串,这些来自一个文本和HTML文档的大型语料库。[9][10]预定义的算法可以提升较小文件的压缩密度。
使用brotli取代deflate来对文本文件压缩通常可以增加20%的压缩密度,而压缩与解压缩速度则大致不变。使用Brotli进行流压缩的内容编码类型已被提议使用“br”。[11]
使用
- Mozilla Firefox在Firefox 44中实现Brotli。[12][13]
- Google Chrome从Chrome 49开始支持Brotli。[13]
- Opera从Opera 36开始支持Brotli。[13]
参见
参考资料
- . [21 April 2017]. (原始内容存档于2015-09-24) –GitHub.
- . 4 April 2017 [21 April 2017]. (原始内容存档于2015-04-04) –GitHub.
- . [11 August 2017]. (原始内容存档于2016-06-29) –GitHub.
- . IETF. 2017-02-17 [2017-02-16]. (原始内容存档于2017-01-29).
- . github.com. [2016-07-01]. (原始内容存档于2016-06-29).
- Slater-Robbins, Max. . techspot.com. 20 Jan 2016 [20 Jan 2016]. (原始内容存档于2016-05-30).
- . [2016-07-01]. (原始内容存档于2016-06-19).
- . Google Developers Blog. 18 Feb 2015 [20 Jan 2016]. (原始内容存档于2016-03-04).
- Richard Chirgwin. . The Register. 23 September 2015 [2016-07-01]. (原始内容存档于2016-05-02).
- Alakuijala, Jyrki; Kliuchnikov, Evgenii; Szabadka, Zoltan; Vandevenne, Lode. (PDF). Google. 2015-09-22 [25 October 2015]. (原始内容存档 (PDF)于2016-02-09).
- . 开源中国社区. [2016-07-01]. (原始内容存档于2016-05-07).
- . mozilla.org. [2016-01-26]. (原始内容存档于2016-03-04).
- . caniuse.com. [2016-01-07]. (原始内容存档于2017-04-08).
外部链接
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.