症状描述

用户反映发给公司内部的邮件,对方间歇性出现延迟20-30分钟接收的问题。登录Exchange集线器传输服务器后会发现有如下的日志警报:
p_w_picpath 
1

 

原因分析

1. 该故障由Exchange一个名为“反压”的保护机制所引起。

2. 反压是 Microsoft Exchange 传输服务的一种系统资源监视功能。在运行 Microsoft Exchange Server 2007/2010集线器传输服务器角色或边缘传输服务器角色的上通常会使用这一功能。它将对重要的系统资源(如可用硬盘驱动器空间和可用内存)进行监视。如果系统资源使用率超出了指定限制,Exchange 服务器会停止接受新的连接和邮件。这样,便可防止过多地使用系统资源,并使 Exchange 服务器可以传送现有邮件。当系统资源使用率恢复到正常级别后,Exchange 服务器就可以接受新的连接和邮件。

3. 从事件日志可以看出是因为“版本存储桶”的数目增大到“”级别,从而导致以任何方式提交邮件。
如果集线器传输服务器上的资源使用率级别为中等:

接受来自其他集线器传输服务器的传入简单邮件传输协议 (SMTP) 连接。
拒绝来自其他邮件服务器的传入 SMTP 连接。
存储驱动器继续接受来自邮箱服务器的邮件。
分拣目录和重播目录将停止处理邮件。

   如果集线器传输服务器上的资源使用率级别为高:
拒绝来自其他集线器传输服务器的传入 SMTP 连接。
拒绝来自其他邮件服务器的传入 SMTP 连接。
存储驱动器停止接受来自邮箱服务器的邮件。

分拣目录和重播目录将停止处理邮件。

解决方案

方案1(增大触发阈值,推荐)

1. 分别登录Exchange集线器传输服务器和边缘传输服务器,备份Exchange安装目录D:\Program Files\Microsoft\Exchange Server\Bin下的EdgeTransport.exe.config文件

2. 打开EdgeTransport.exe.config文件,找到</appSettings>,在上面添加如下记录,增大版本存储桶”数目阈值,如图2所示:
p_w_picpath
2

<add key="VersionBucketsHighThreshold" value="3000" />  
(将“高”级别阈值设置为3000
<add key="VersionBucketsMediumThreshold" value="2000" />(将“中”级别阈值设置为2000
<add key="VersionBucketsNormalThreshold" value="1000" />(将“正常”级别阈值设置为1000

3. 修改完毕后重启一下“Microsoft Exchange传输”服务即可。

 

方案2(禁用“反压”功能,不推荐)

1. 分别登录Exchange集线器传输服务器和边缘传输服务器,备份Exchange安装目录D:\Program Files\Microsoft\Exchange Server\Bin下的EdgeTransport.exe.config文件

2. 打开EdgeTransport.exe.config文件,查找“EnableResourceMonitoring”字段,将:
<add key="EnableResourceMonitoring" value="true" />
修改为:
<add key="EnableResourceMonitoring" value="false" />
如图3所示
p_w_picpath
3

3. 修改完毕后重启一下“Microsoft Exchange传输”服务即可。