Exchange 2007 前端 IIS 内存占用过高
2015-07-29 13:42
1106 查看
已经碰见了好几次,在Exchange2007的场景中,前端角色所在服务器的w3wp.exe进程总是占用大量内存,以至于触发反压组件,停止了正常的邮件流投递,造成业务中断。
终于下决心查一下到底问题问题出在哪块,虽然Exchange 2007一直在出各种SP和rollUP声称解决了该问题(SP2,或者是SP3 rollup10)。但是打过补丁之后该吃内存的还是吃内存,该报警反压的还是报警反压。
打开任务管理器,查看里面选择列把PID勾上,就可以看到PID为6560的w3wp进程占用了较大量的内存。
![](http://s3.51cto.com/wyfs02/M02/6D/DA/wKiom1VtUq2jzuYtAAHH_NSGaCA893.jpg)
![](http://s3.51cto.com/wyfs02/M00/6D/DA/wKiom1VtUrGBV6MCAAK2C8S3Zdw663.jpg)
然后打开命令行,如果是windows server 2003的话,输入iisapp ,就可以获得所有IIS应用程序池对应的进程PID值,从图中可以看到
PID6560的应用程序池对应的是MSExchangeSyncAppPool。
如果是windows 2008 (IIS7) 及以上,则需要输入%windir%\system32\inetsrv\appcmd.exe list wp来查看对应的应用程序池
![](http://s3.51cto.com/wyfs02/M01/6D/DA/wKiom1VtUrGw71cBAAFc1lfU9H4255.jpg)
打开IIS管理器,定位到该应用程序池,单击右键选择属性,接着对其内存使用进行相应的限制即可。
如图,该服务器物理内存配置不高,所以限制为2GB,以留给IIS本身足够的时间来进行自动回收。
![](http://s3.51cto.com/wyfs02/M02/6D/DA/wKiom1VtUrHS4CGXAAHL8Wj0M9U210.jpg)
![](http://s3.51cto.com/wyfs02/M00/6D/DA/wKiom1VtUrKT2r1vAAFho2McKZQ199.jpg)
限制完毕之后,反压日志明显减少。
该应用程序进程池对应的是Exchange的ActiveSync组件,仔细想想在Exchange 2007刚发布的年代,有多少人用手机ActiveSync组件去收发邮件,所以产品上出现性能问题也正常,在后面的10和13中这问题就出的不多了。
所以彻底解决问题的方法还是1、升级。2、加内存……
最后附上一个用于排查 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各时间段的压力和性能指标。
终于下决心查一下到底问题问题出在哪块,虽然Exchange 2007一直在出各种SP和rollUP声称解决了该问题(SP2,或者是SP3 rollup10)。但是打过补丁之后该吃内存的还是吃内存,该报警反压的还是报警反压。
打开任务管理器,查看里面选择列把PID勾上,就可以看到PID为6560的w3wp进程占用了较大量的内存。
![](http://s3.51cto.com/wyfs02/M02/6D/DA/wKiom1VtUq2jzuYtAAHH_NSGaCA893.jpg)
![](http://s3.51cto.com/wyfs02/M00/6D/DA/wKiom1VtUrGBV6MCAAK2C8S3Zdw663.jpg)
然后打开命令行,如果是windows server 2003的话,输入iisapp ,就可以获得所有IIS应用程序池对应的进程PID值,从图中可以看到
PID6560的应用程序池对应的是MSExchangeSyncAppPool。
如果是windows 2008 (IIS7) 及以上,则需要输入%windir%\system32\inetsrv\appcmd.exe list wp来查看对应的应用程序池
![](http://s3.51cto.com/wyfs02/M01/6D/DA/wKiom1VtUrGw71cBAAFc1lfU9H4255.jpg)
打开IIS管理器,定位到该应用程序池,单击右键选择属性,接着对其内存使用进行相应的限制即可。
如图,该服务器物理内存配置不高,所以限制为2GB,以留给IIS本身足够的时间来进行自动回收。
![](http://s3.51cto.com/wyfs02/M02/6D/DA/wKiom1VtUrHS4CGXAAHL8Wj0M9U210.jpg)
![](http://s3.51cto.com/wyfs02/M00/6D/DA/wKiom1VtUrKT2r1vAAFho2McKZQ199.jpg)
限制完毕之后,反压日志明显减少。
该应用程序进程池对应的是Exchange的ActiveSync组件,仔细想想在Exchange 2007刚发布的年代,有多少人用手机ActiveSync组件去收发邮件,所以产品上出现性能问题也正常,在后面的10和13中这问题就出的不多了。
所以彻底解决问题的方法还是1、升级。2、加内存……
最后附上一个用于排查 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各时间段的压力和性能指标。
相关文章推荐
- 异步流程控制:7 行代码学会 co 模块
- [译] React 入门
- 2007至2008中国互联网年度调查10大亮点
- IIS 错误 Server Application Error 详细解决方法
- 重现 Office 2007 中的菜单和工具栏的方法
- webshell查看IIS站点配置的方法
- Anti-Virus Tools 2007 熊猫专杀民间版下载
- Protector Plus Antivirus 2007 v8.0.A03 下载附注册机(keygen)
- IIS运行错误 Server Application Error 错误代码 Error: 8004的解决方法
- IIS 6 的 PHP 最佳配置方法
- iis Web站点崩溃的原因分析
- IIS 最容易发生的故障的解决方法集合
- 瑞星杀毒软件 2007 免序列号免ID简体中文版下载
- 微软Word 2007数学插件 Microsoft Math 提供下载
- PowerPoint 2007插入swf的图文方法第1/2页
- Microsoft Office 2007 SP1 简体中文正式版 升级包官方下载地址
- IIS_AD 1.0+生成器IIS插件方便提供空间加广告无限制版
- Iiscnfg.vbs IIS 配置脚本
- 让IIS建立的站点默认是.net 2.0的,而不是.net 1.1的代码