Exchange 2007 前端 IIS 內存佔用太高

已經遇見了好幾回,在Exchange2007的場景中,前端角色所在服務器的w3wp.exe進程老是佔用大量內存,以致於觸發反壓組件,中止了正常的郵件流投遞,形成業務中斷。前端

終於下決心查一下到底問題問題出在哪塊,雖然Exchange 2007一直在出各類SP和rollUP聲稱解決了該問題(SP2,或者是SP3 rollup10)。可是打過補丁以後該吃內存的仍是吃內存,該報警反壓的仍是報警反壓。shell

打開任務管理器,查看裏面選擇列把PID勾上,就能夠看到PID爲6560的w3wp進程佔用了較大量的內存。windows

p_w_picpath

p_w_picpath

而後打開命令行,若是是windows server 2003的話,輸入iisapp ,就能夠得到全部IIS應用程序池對應的進程PID值,從圖中能夠看到服務器

PID6560的應用程序池對應的是MSExchangeSyncAppPool。app

若是是windows 2008 (IIS7) 及以上,則須要輸入%windir%\system32\inetsrv\appcmd.exe list wp來查看對應的應用程序池ide

p_w_picpath

打開IIS管理器,定位到該應用程序池,單擊右鍵選擇屬性,接着對其內存使用進行相應的限制便可。工具

如圖,該服務器物理內存配置不高,因此限制爲2GB,以留給IIS自己足夠的時間來進行自動回收。性能

p_w_picpath

p_w_picpath

限制完畢以後,反壓日誌明顯減小。命令行

該應用程序進程池對應的是Exchange的ActiveSync組件,仔細想一想在Exchange 2007剛發佈的年代,有多少人用手機ActiveSync組件去收發郵件,因此產品上出現性能問題也正常,在後面的10和13中這問題就出的很少了。日誌

因此完全解決問題的方法仍是一、升級。二、加內存……

最後附上一個用於排查 Exchange ActiveSync 問題的腳本

http://blogs.technet.com/b/exchange_chs/archive/2012/02/24/exchange-activesync.aspx

這個腳本的用途是經過該Exchange ActiveSync應用程序池的日誌,log parser2.0工具以及powershell2.0來分析全部的使用移動設備經過EAS服務鏈接Exchange服務器的狀態。

能夠獲取到每臺設備天天鏈接了多少次等信息,在這些信息中,若是有天天超過1000次鏈接的設備,那在產品組看來這就是非正常的高頻度鏈接。同時也能夠藉由此腳原本發現IIS各時間段的壓力和性能指標。

相關文章
相關標籤/搜索