但不同版本的 IIS 對網(wǎng)站制作過程中的靜態(tài)文件 gzip 壓縮方式卻有著不同的理論區(qū)別與實踐區(qū)別。
其中,在網(wǎng)站制作過程中作用 IIS6 進行靜態(tài)文件 gzip 壓縮處理時,靜態(tài)文件 gzip 壓縮是在一個不同的線程上進行的,系統(tǒng)在收到一個 HTTP 請求后,首先會給瀏覽器發(fā)送一個未經(jīng)過壓縮處理的 HTML 版本,與此同時它還會開始使用另外一個不同的線程對此 HTTP 請求進行壓縮處理并將其長期保存于壓縮文件緩存文件夾中,以便在今后的請求中可以直接調(diào)用壓縮后的版本并返回給瀏覽器。
與 IIS6 不同,IIS7 的網(wǎng)站制作靜態(tài)文件 gzip 壓縮處理主要是在主線程上進行,并且 IIS7 并不會對所有的 HTTP 請求都進行靜態(tài)壓縮處理,而只會對一些經(jīng)常會被用戶訪問的靜態(tài)文件進行壓縮處理與版本保存,與 IIS6 不同,IIS7 的壓縮版本只是暫時保存于服務(wù)器當(dāng)中或者緩存文件夾當(dāng)中,在短時間內(nèi)會刪除以節(jié)省網(wǎng)站制作過程中的壓縮成本。
在網(wǎng)站制作后期的訪問過程中 IIS7 會根據(jù) system.webServer/serverRuntime 中的 frequentHitThreshold 和 frequentHitTimePeriod 這兩個屬性來判斷網(wǎng)站制作文件是否會被經(jīng)常訪問,是否具有被壓縮處理的必要即如果 IIS 在 frequentHitTimePeriod 時間段內(nèi)接收到的某個靜態(tài)文件的訪問總次數(shù)超過了 frequentHitThreshold 閘值次數(shù)時 IIS7會對此文件進行壓縮處理并長期保存緩存以方便客戶的訪問。