gzip的介紹以及web伺服器對檔案壓縮的支援
GZIP和HTTP
GZIP是一種檔案壓縮標準,能夠大幅度的減少檔案本身大小和佔用的儲存空間。現今已經成為Internet 上使用非常普遍的一種資料壓縮格式,或者說一種檔案格式。
通過HttpWatch或者burp suite等抓包工具,可以檢視http頭部 Accept-Encoding的值,如果該欄位顯示的是"gzip,deflate",就代表該瀏覽器能夠識別gzip格式的檔案。
這樣伺服器就可以將檔案壓縮成gzip,以便減少瀏覽器下載檔案的時間。gzip和伺服器對處理gzip過程簡介:
http://www.cnblogs.com/witxjp/archive/2003/12/17/1986210.html
http://www.cnblogs.com/linzhenjie/archive/2013/03/05/2943635.html
靜態壓縮和動態壓縮
gzip的實現
1、java jdk內建對gzip的支援,可以通過使用GZIPInputStream和GZIPOutputStream進行壓縮和解壓縮。
這2個類使用都比較簡單,這裡不再贅述。
2、主流的web伺服器也都內建了對於檔案的gzip壓縮功能,比如jboss和tomcat。
tomcat的配置可以參考http://blog.csdn.net/yanghongchang_/article/details/8047577(優化網站響應時間tomcat新增gzip)
weblogic的配置可以參考http://www.blogjava.net/xggc63/archive/2011/05/25/342979.html
jboss的配置如下,在jboss-4.2.3.GA\server\default\deploy\jboss-web.deployer\server.xml中新增
<Connector port="8080" address="${jboss.bind.address}"
maxThreads="250" maxHttpHeaderSize="8192"
emptySessionPath="true" protocol="HTTP/1.1"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="utf-8"
compressableMimeType="text/html,text/xml,text/css,text/javascript,application/x-javascript,application/javascript"
compressionMinSize="2048" noCompressionUserAgents="gozilla,traviata" />
3、也可以使用第三方工具,實現gzip壓縮和快取等.這裡使用的是tk-filters,
可以到http://sourceforge.net/projects/filterlib/ 下載,使用方式也比較簡單,
參考http://blog.csdn.net/yanghongchang_/article/details/8047577
http://blog.csdn.net/coooliang/article/details/8974102
4、自定壓縮實現
http://blog.chinaunix.net/uid-26284395-id-3043664.html
http://www.cnblogs.com/hemingwang0902/archive/2012/01/12/compression-filter.html
http://www.onjava.com/pub/a/onjava/2003/11/19/filters.html (Two Servlet Filters Every Web Application Should Have)
相關文章
- 使用gzip壓縮檔案
- 分析核心對gzip壓縮檔案進行解壓的方法(轉)
- Vue開啟gzip壓縮檔案Vue
- 前端效能優化gzip初探(補充gzip壓縮使用演算法brotli壓縮的相關介紹)前端優化演算法
- 過濾器實現檔案的gzip壓縮過濾器
- Java和.NET的GZIP壓縮功能對比Java
- 關於Java的GZIP壓縮與.net C#的GZIP壓縮的差異JavaC#
- 修復損壞的gzip壓縮檔案之原理篇
- Java實現檔案壓縮與解壓[zip格式,gzip格式]Java
- pdf怎麼壓縮,好用的pdf壓縮工具介紹
- aix 檔案的壓縮與解壓縮AI
- linux下的檔案的壓縮和解壓縮Linux
- 伺服器端如何開啟GZIP壓縮功能伺服器
- Node.js伺服器啟用Gzip壓縮Node.js伺服器
- 圖解gzip壓縮檔案底層結構及檔案損壞的修復方法圖解
- Linux中檔案的壓縮和解壓縮Linux
- cassandra壓縮特性介紹
- Java學習筆記之I/O流(讀取壓縮檔案以及壓縮檔案)Java筆記
- linux下gzip的壓縮詳解Linux
- Apache 開啟gzip壓縮Apache
- Linux 檔案的壓縮Linux
- .Z 檔案的解壓縮
- 使用filter實現網站的gzip壓縮Filter網站
- vue-cli npm run build空白頁的兩個坑 webpack gzip檔案壓縮優化打包檔案VueNPMUIWeb優化
- 檔案的壓縮與解壓縮zz--linuxLinux
- Android Java壓縮Zlib,Gzip,Zip支援J2MEAndroidJava
- 啟用 Brotli 壓縮演算法,對比 Gzip 壓縮 CDN 流量再減少 20%演算法
- 給Tomcat,Apache配置gzip壓縮(HTTP壓縮)功能 (轉)TomcatApacheHTTP
- nginx的gzip指令介紹,Nginx的gzip指令使用小結Nginx
- Nginx的gzip壓縮的原理和設定引數Nginx
- Linux中檔案的壓縮與解壓縮(轉貼)Linux
- gulp壓縮檔案
- Java檔案壓縮Java
- java 檔案壓縮Java
- 探索HTTP傳輸中gzip壓縮的祕密HTTP
- 解析ws訂閱返回的GZIP 壓縮資料
- excel檔案裡的圖片怎麼壓縮?excel檔案裡圖片的壓縮方法Excel
- 從 Gzip 壓縮 SVG 說起 — 論如何減小資原始檔的大小SVG