IIS本身并沒有提供太多的性能配置項來讓用戶優化性能。當然了,配置項還是有一些的,對于IIS性能相關的設置主要是在應用程序池中來設置。
我們在“應用程序池”中找到某個網站對應的程序池 》然后選擇“高級設置”》“進程模型”中有個“最大工作進程數”,當網站并發很大時,我們酌情增大此處的值,會減少排隊,效果會有改善。
除此之外,在應用程序池中還有一些配置項會對性能產生一定的影響,比如說:
隊列長度:默認值是1000,我們可以改為65535;
啟用32位應用程序:默認值是false,我們要改為true,這樣能保證軟件的兼容性;
禁用重疊回收:默認值是false,我們改為true,true可以防止應用程序池回收假死的現象;
快速故障防護 - 已啟用:默認是true,我們改為false。
另外我們還可以開啟IIS的Gzip壓縮,開啟方式如下圖示:
除此之外沒有什么配置項要更改了。僅僅靠IIS想提高應用并發能力還不行,我們需要借助其它的技術選型來做優化。
結合我的經驗給出一些選型方案供大家參考:
1、在IIS前端部署Nginx作為代理服務器,IIS作為后端服務器處理動態請求;
2、動靜分離,靜態資源統一走CDN加速;
3、熱點數據用NoSQL存儲,甚至對于一些頁面我們把其內容可以存入到Redis中,K/V數據庫操作性能更好,減少了數據庫壓力。