導航:首頁 > 文件處理 > gzip壓縮效率

gzip壓縮效率

發布時間:2022-10-03 18:08:22

㈠ nginx gzip 壓縮比 多少好

隨著壓縮率的提高,所消耗的CPU也會越來越多,建議值是4,但是DavidYin的建議是直接用5。因為每提高一級壓縮,數據就減少大約2到3KB,而從5到6,只有減少大約0.5KB,再之後也幾乎沒有什麼變化了。所以就直接設置 gzip_comp_level 5
對於CPU的消耗,我覺得還是不是那麼的厲害,畢竟靜態文件,還可以設置過期頭,讓它的有效緩存期長一點,比如設置成半年一年的。實際上CPU的壓力在這上面是沒有那麼大的。

㈡ gzip有比winRAR更高的壓縮比嗎

GZIP一般是指網頁頁面壓縮,
zip,rar是winrar的兩種壓縮文件格式
zip,windows自帶的工具都可以解壓,rar不可以
rar可以設定壓縮率,通常rar的壓縮率比zip高。

java中zip壓縮和gzip壓縮的區別

一個zip可以內藏多個文件
狹義的gzip僅對單個文件壓縮,不能打包多個文件。
tar.gzip或tgz可以打包多個文件,屬於固實壓縮,壓縮比較高,但隨機存取單個文件的效率不如zip..

㈣ 把純文本字元串用Gzip壓縮再轉換為Base64能有多少壓縮率

其實具體多大壓縮率要看源文件的內容,一般來說重復的單詞越多,壓縮率越高。

下面是把/usr/share/dict/words壓縮的測試程序

import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.zip.GZIPOutputStream;

import org.apache.commons.codec.binary.Base64;

public class GzipBase64Tests {

public static void main(String[] args) throws Exception {
File input = new File("/Users/matianyi/input.txt");
File output = new File("/Users/matianyi/output.txt");

if (!input.exists()) {
System.out.println("input file not exists!");
return;
}

if (output.exists()) {
output.delete();
}

ByteArrayOutputStream buffer = new ByteArrayOutputStream();
GZIPOutputStream gout = new GZIPOutputStream(buffer);

FileInputStream in = new FileInputStream(input);

long t1 = System.currentTimeMillis();
byte[] buf = new byte[1024];
int total=0;
int rd;
while ((rd = in.read(buf)) != -1) {
total += rd;
gout.write(buf,0, rd);
}

gout.close();
in.close();

byte[] result = buffer.toByteArray();

long t2 = System.currentTimeMillis();
String base64 = Base64.encodeBase64String(result);
long t3 = System.currentTimeMillis();

System.out.printf("raw %d -> gzip %d -> base64 %d, time1 %dms, time2 %dms", total, result.length, base64.length(), t2-t1, t3-t2);
}
}

輸出為: raw 2493109 -> gzip 753932 -> base64 1005244, time1 225ms, time2 43ms

壓縮了50%。

㈤ GZIP 與zip區別

一、主體不同

1、GZIP:最早由Jean-loup Gailly和Mark Adler創建,用於UNⅨ系統的文件壓縮。

2、ZIP:ZIP文件格式是一種數據壓縮和文檔儲存的文件格式。

二、特點不同

1、GZIP:基礎是DEFLATE,DEFLATE是LZ77與哈夫曼編碼的一個組合體。DEFLATE最初是作為LZW以及其它受專利保護的數據壓縮演算法的替代版本而設計的。

2、ZIP:是一種相當簡單的分別壓縮每個文件的存檔格式。分別壓縮文件允許不必讀取另外的數據而檢索獨立的文件。


三、優點不同

1、GZIP:可以減少存儲空間,通過網路傳輸文件時,可以減少傳輸的時間。

2、ZIP:支持基於對稱加密系統的一個簡單的密碼,已知有嚴重的缺陷,已知明文攻擊,字典攻擊和暴力攻擊。

㈥ gzip壓縮 是什麼

這一般是指WWW伺服器中安裝的一個功能,當有人來訪問這個伺服器中的網站時,伺服器中的這個功能就將網頁內容壓縮後傳輸到來訪的電腦瀏覽器中顯示出來.一般對純文本內容可壓縮到原大小的40-70左右%.這樣傳輸就快了,效果就是你點擊網址後會很快的顯示出來.當然這也會增加伺服器的負載.一般伺服器中都安裝有這個功能模塊的.
網站的訪問速度是由多個因素所共同決定的,這些因素例如應用程序的響應速度、網路帶寬、伺服器性能、與客戶端之間的網路傳輸速度等等。其中最重要的一個因素是應用程序本身的響應速度,因此當你為網站性能所苦惱時,你第一個需要著手進行處理的便是盡可能的提升應用程序的執行速度,你可以使用緩存或者是優化代碼的執行效率來提升應用程序的速度。
在確保您的應用程序的性能已經達到足夠好,同時伺服器的性能也完全滿足的情況下,不妨來試試網頁壓縮來進一步提升網頁的瀏覽速度,而且非常重要的是,它完全不需要任何的成本,只不過是會讓您的伺服器CPU佔用率稍微提升一兩個百分點而已或者更少。
網頁壓縮是一項由 WEB 伺服器和瀏覽器之間共同遵守的協議,也就是說 WEB 伺服器和瀏覽器都必須支持該技術,所幸的是現在流行的瀏覽器都是支持的,包括 IE、FireFox、Opera 等;伺服器有 Apache 和 IIS 等。雙方的協商過程如下:
1.首先瀏覽器請求某個 URL 地址,並在請求的頭 (head) 中設置屬性 accept-encoding 值為 gzip, deflate,表明瀏覽器支持 gzip 和 deflate 這兩種壓縮方式(事實上 deflate 也是使用 gzip 壓縮協議);
2.WEB 伺服器接收到請求後判斷瀏覽器是否支持壓縮,如果支持就傳送壓縮後的響應內容,否則傳送不經過壓縮的內容;
3.瀏覽器獲取響應內容後,判斷內容是否被壓縮,如果是則解壓縮,然後顯示響應頁面的內容。
在實際的應用中我們發現壓縮的比率往往在 3 到 10 倍,也就是本來 50k 大小的頁面,採用壓縮後實際傳輸的內容大小隻有 5 至 15k 大小,這可以大大節省伺服器的網路帶寬,同時如果應用程序的響應足夠快時,網站的速度瓶頸就轉到了網路的傳輸速度上,因此內容壓縮後就可以大大的提升頁面的瀏覽速度。

㈦ 把純文本字元串用Gzip壓縮再轉換為Base64能有多少壓縮率

其實具體多大壓縮率要看源文件的內容,一般來說重復的單詞越多,壓縮率越高。

下面是把/usr/share/dict/words壓縮的測試程序

import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.zip.GZIPOutputStream;

import org.apache.commons.codec.binary.Base64;

public class GzipBase64Tests {

public static void main(String[] args) throws Exception {
File input = new File("/Users/matianyi/input.txt");
File output = new File("/Users/matianyi/output.txt");

if (!input.exists()) {
System.out.println("input file not exists!");
return;
}

if (output.exists()) {
output.delete();
}

ByteArrayOutputStream buffer = new ByteArrayOutputStream();
GZIPOutputStream gout = new GZIPOutputStream(buffer);

FileInputStream in = new FileInputStream(input);

long t1 = System.currentTimeMillis();
byte[] buf = new byte[1024];
int total=0;
int rd;
while ((rd = in.read(buf)) != -1) {
total += rd;
gout.write(buf,0, rd);
}

gout.close();
in.close();

byte[] result = buffer.toByteArray();

long t2 = System.currentTimeMillis();
String base64 = Base64.encodeBase64String(result);
long t3 = System.currentTimeMillis();

System.out.printf("raw %d -> gzip %d -> base64 %d, time1 %dms, time2 %dms", total, result.length, base64.length(), t2-t1, t3-t2);
}
}

輸出為: raw 2493109 -> gzip 753932 -> base64 1005244, time1 225ms, time2 43ms

壓縮了50%。

㈧ Linux壓縮工具gzip和pigz哪個比較好

1、pigz默認用法(默認並發線程是邏輯cpu個數)可比gzip快5.3倍,CPU消耗則是gzip的8倍,壓縮比則相當;
2、並發8線程對比4線程提升:41.2%,16線程對比8線程提升:27.9%,32線程對比16線程提升:3%;
3、在對壓縮效率要求較高、但對短時間內CPU消耗較高不受影響的場景,使用pigz非常合適。

閱讀全文

與gzip壓縮效率相關的資料

熱點內容
銀河v10驅動重編譯 瀏覽:889
電腦上文件夾右擊就會崩潰 瀏覽:689
右美維持演算法 瀏覽:938
php基礎編程教程pdf 瀏覽:219
穿越之命令與征服將軍 瀏覽:351
android廣播重復 瀏覽:832
像阿里雲一樣的伺服器 瀏覽:318
水冷空調有壓縮機嗎 瀏覽:478
訪問日本伺服器可以做什麼 瀏覽:432
bytejava詳解 瀏覽:448
androidjava7 瀏覽:384
伺服器在山洞裡為什麼還有油 瀏覽:885
天天基金app在哪裡下載 瀏覽:974
伺服器軟路由怎麼做 瀏覽:292
冰箱壓縮機出口 瀏覽:228
OPT最佳頁面置換演算法 瀏覽:644
網盤忘記解壓碼怎麼辦 瀏覽:853
文件加密看不到裡面的內容 瀏覽:654
程序員腦子里都想什麼 瀏覽:434
oppp手機信任app在哪裡設置 瀏覽:189