前言

在 Internet Information Server (IIS) 效能調教中有項重要的功能:壓縮 (Compression),運用得宜的話,可以增加不少效能,但相對用的不好,會導致 CPU 資源使用率飆高。壓縮分成動態壓縮靜態壓縮,其中靜態壓縮造成的影響較小,在多數情境下是建議啟用的。IIS 預設靜態壓縮是啟用的,且壓縮等級設定為 7 (數字越大表示壓縮效果高)。這篇文章簡單紀錄如何修改靜態壓縮等級,提供給有興趣的朋友參考。

指令操作

我們需要透過 appcmd.exe 工具進行設定,它的位置在 <%windir%>\System32\inetsrv (一般來說位置是 C:\Windows\System32\inetsrv),建議可將此路徑加入環境變數,使用時就不需要切換目錄。


我們可以透過下列指令查詢目前靜態壓縮等級
appcmd list config -section:httpCompression -text:[name='gzip'].staticCompressionLevel


接下來透過下列指令設定靜態壓縮等級
appcmd.exe set config -section:httpCompression -[name='gzip'].staticCompressionLevel:9


更改成功後,除了可以透過查詢指令確認,也能在 applicationHost.config 內看見設定 (若沒有 static compression level 屬性視為預設值 7)。另外有些朋友會詢問說直接修改 applicationHost.config 是否可惜,個人建議透過指令方式避免錯字導致設定檔案毀損。



參考資料

1. Scheme - Microsoft Docs