今天跟同事討論起網站效率優化的問題。
說起優化,首先當然想到的是壓縮功能了呀。
然後,就肯定是Gzip咯。
ok,簡單的百度了一下Gzip在nodejs中的實現。
然後,
就找到了如下方式。
操作:
首先,在項目根目錄下運行npm,安裝Gzip所需要用到的包"compression"。
運行cmd,在E:\ProjectOne目錄下,執行以下命令。
npm i [email protected] --save
該命令的作用是,在當前目錄下安裝compression包,指定版本爲1.6.1,並且將版本保存到package.json文件中。
待安裝包安裝完之後,我們再在app.js文件裏,增加這兩句代碼。(請確保這個包在所有中間件之前加載。)
var compression = require('compression');
app.use(compression());
這樣,我們的服務器就已經成功啓動Gzip壓縮功能了。
測試:
簡單測試對比一下,
在頁面中加載jquery-1.11.3.min.js和zepto.min.js,這兩個js文件。
然後用chrome的控制檯,觀察一下文件加載的情況。
未啓用Gzip前,網絡加載大小爲93.7kb和23.4kb。
在啓用Gzip之後,兩個文件分別大小爲32.9kb和8.8kb。
結論:
壓縮率超過了60% !!!!!
嘗試在一個html中,寫了3萬個<h1>標籤,,內容是一樣的。都是<h1>hello world!</h1>這樣。
原html高達812kb。在啓用了Gzip之後,網頁傳輸只用了驚人的2.9kb。
雖然是沒營養的測試數據,但是還是無比高效的降低了網絡傳輸文件大小。
有效的加速了網頁內容的加載。