久久国产av,国产激情欧美有码,亚洲国产综合精品2020,国产无套粉嫩白浆内精

gzip壓縮的效率(Nginx啟用壓縮及開(kāi)啟gzip 壓縮的方法)

2023-04-14 16:18:01 數(shù)碼極客 1090次閱讀 投稿:柚柚

今天凡太百科給各位分享gzip壓縮的知識(shí),其中也會(huì)對(duì)gzip壓縮的效率進(jìn)行解釋,如果能碰巧解決你現(xiàn)在面臨的問(wèn)題,別忘了關(guān)注本站,現(xiàn)在開(kāi)始吧!

Nginx啟用壓縮及開(kāi)啟gzip 壓縮的方法

gzip(GNU-ZIP)是一種壓縮技術(shù)。經(jīng)過(guò)gzip壓攜鬧橘縮后頁(yè)面大小可以變辯團(tuán)為原來(lái)的30%甚至更小,這樣,用戶瀏覽頁(yè)面的時(shí)候速度會(huì)塊得多。

gzip 的壓縮頁(yè)面需要瀏覽器和服務(wù)器雙方都支持,實(shí)際上就是服務(wù)器端壓縮,傳到瀏覽器后瀏覽器彎沒(méi)解壓并解析。瀏覽器那里不需要我們擔(dān)心,因?yàn)槟壳暗木薮蠖鄶?shù)瀏覽器 都支持解析gzip過(guò)的頁(yè)面。

Nginx的壓縮輸出有一組gzip壓縮指令來(lái)實(shí)現(xiàn)。相關(guān)指令位于http{….}兩個(gè)大括號(hào)之間。

具體配置如下

怎么用gzip把文件壓縮成gz格式?

在linux下,使用gzip命令可以對(duì)目錄壓縮生成gz文件,具體步驟如下:

1、首先并氏做,連接相應(yīng)linux主機(jī),進(jìn)入到linux命令行狀態(tài)下,等待輸入shell指令。

2、其次,在linux命令行中輸入:gzip test.txt。

3、最絕衡后,按下回車核哪鍵執(zhí)行g(shù)zip指令,之后會(huì)看到test.txt文件被成功壓縮成test.txt.gz文件了。

gzip壓縮實(shí)踐

為提高網(wǎng)頁(yè)加載速度,啟用 gzip 縮減資源的大小是非常常見(jiàn)的手段。純租現(xiàn)代瀏覽器均支持 gzip 壓縮,并會(huì)為HTTP請(qǐng)求自動(dòng)協(xié)商此類壓縮。

本文將對(duì) gzip 的實(shí)踐和原理做一個(gè)簡(jiǎn)單的總結(jié)。

web服務(wù)器在接收到瀏覽器的請(qǐng)求之后,會(huì)檢查瀏覽器可以接受哪些壓縮方法,詳情可見(jiàn)下圖。

瀏覽器在請(qǐng)求頭中會(huì)帶上 Accept-Encoding 這個(gè)參數(shù)來(lái)說(shuō)明自己支持哪些內(nèi)容編碼方式。

而服務(wù)端返回的 Response Headers 中則存在一個(gè) Content-Encoding ,用來(lái)說(shuō)明數(shù)據(jù)的壓縮方法。

幾乎所有的瀏覽器都已經(jīng)支持了 gzip ,并且有請(qǐng)求頭的驗(yàn)證,所以基本不需要擔(dān)心兼容相關(guān)的問(wèn)題。

壓縮前后的體積前后差異,可以在控制臺(tái)中看到??梢哉f(shuō),對(duì)于js、css文件的壓縮率還是比較可觀的。

經(jīng)過(guò)這種方式的配置,在服務(wù)端響應(yīng)請(qǐng)求的時(shí)候會(huì)對(duì)文件進(jìn)行壓縮,之后返回壓縮過(guò)后的內(nèi)容。不過(guò)壓縮這一過(guò)程多多少少會(huì)占用一些服務(wù)端的性能,具體壓縮的程度,也就是 gzip_comp_level 設(shè)置的值也會(huì)影響到占用性能的多少,接下來(lái)我們來(lái)看一些網(wǎng)上搜集到的數(shù)據(jù),了解不同值的設(shè)置對(duì)文件大小和CPU占用的影響。

可以看到,壓縮級(jí)別從0到1時(shí),文件大小明顯減小,CPU消耗略微上漲。而在之后文件減小的速率做纖兆明顯放緩,在達(dá)到了5之后繼續(xù)增加壓縮級(jí)別,文件的體積也幾乎沒(méi)有縮小,但CPU消耗卻有較為明顯的上漲。

根據(jù)結(jié)論可以看出,如果是在服務(wù)端使用 gzip 壓縮的話,豎橘考慮到性能和壓縮率的取舍,將壓縮級(jí)別設(shè)置為一個(gè)較低的值,比如2之類的,是比較合理的。

我們也可以選擇在打包構(gòu)建項(xiàng)目的時(shí)候就對(duì)文件進(jìn)行g(shù)zip壓縮

這邊以打包一個(gè) webpack 的前端項(xiàng)目為例

運(yùn)行構(gòu)建命令后可以看到,在生成 .js 和 .css 的同時(shí)還生成了對(duì)應(yīng)的 .gz 文件。

在這種方式的壓縮中,我們完全可以把壓縮等級(jí)設(shè)置為一個(gè)比較高的值(默認(rèn)),畢竟只是略微影響打包的時(shí)間,卻能獲取一個(gè)更小的體積的包,還是比較值得的。

以 nginx 為例,靜態(tài)壓縮需要使用 http_gzip_static_module 這個(gè)模塊,這個(gè)模塊不是默認(rèn)的,應(yīng)使用 --with-http_gzip_static_module 的配置參數(shù)啟用它

之后再配置中添加

這樣便可開(kāi)啟靜態(tài)壓縮。

需要注意以下幾點(diǎn):

服務(wù)器開(kāi)啟Gzip壓縮功能

在負(fù)載均衡中有一個(gè)必須要做的事情就是給服務(wù)宴此器開(kāi)啟Gzip壓縮功能,對(duì)用戶請(qǐng)求的頁(yè)面進(jìn)行壓縮處理,以達(dá)到節(jié)省网络帶寬,提高網(wǎng)站速度的作用。

Gzip是若干文件壓縮程序的簡(jiǎn)稱,通常指GNU計(jì)劃的實(shí)現(xiàn),此處的Gzip代表的就是GUN ZIP,這也是HTTP1.1協(xié)議定義的兩種壓縮方法中最常用的一種壓縮方法,客戶端瀏覽器大都支持這種壓縮格式。

接下來(lái),將介紹Apache、Nginx 如何開(kāi)啟Gzip壓縮。

Apache開(kāi)啟Gzip要看查乎歷看是否已經(jīng)開(kāi)啟mod_deflate模塊,如果沒(méi)有則需要先加載,在配置文件httpd.conf中將

前面的#號(hào)去掉。另外,如果對(duì)Apache的配置文件不太懂的客戶在修改配置文件之前對(duì)配置文件進(jìn)行備份。

開(kāi)啟模塊后,在httpd.conf配置文件的最晌頃迅下面空白處添加一下內(nèi)容:

其中DeflateCompressionLevel 的意思是壓縮等級(jí),共分為1-9,9級(jí)為最高,不建議使用太高的壓縮比,這樣會(huì)對(duì)CPU產(chǎn)生太大的負(fù)擔(dān)。

打開(kāi)配置文件 nginx.conf找到Gzip on 把前面的注釋符號(hào)#去掉即可開(kāi)啟GZIP服務(wù)。然后配置GZIP即可。

下面是一個(gè)相對(duì)優(yōu)化不錯(cuò)的配置。

聲明:各百科所有作品(圖文、音視頻)均由用戶自行上傳分享,僅供網(wǎng)友學(xué)習(xí)交流。若您的權(quán)利被侵害,請(qǐng)聯(lián)系: [email protected]