识别慢速 RPC 请求处理

 

上一次修改主题: 2005-07-15

在 MAPI 模式中使用 Microsoft® Office Outlook® 时,Outlook 中的客户端操作会转换为客户端与服务器之间的远程过程调用 (RPC)。如果用户正在以联机模式运行,这些 RPC 调用会同步发生。服务器在实现这些同步请求的过程中所导致的任何延迟都会直接影响用户体验和 Outlook 的响应性能。相反,在缓存模式中运行会导致大部分请求被异步处理。异步处理意味着不应将大多数用户操作的启动速度转换为 Outlook 的响应性能或总体体验。

通常,如果 RPC 请求中的峰值不增加每秒的 RPC 操作数,则表示存在阻碍存储及时实现请求的瓶颈。通过 RPC 请求和每秒的 RPC 操作数确定发生瓶颈的位置相对来说比较简单。如果客户端遇到了延迟,但 RPC 请求却为零,而且每秒的 RPC 操作数也很低,则性能问题应发生在 Exchange 处理该请求之前(即发生在 Microsoft Exchange Information Store 服务实际获取传入请求之前)。所有其他组合都指向一个问题,即性能发生在 Exchange 处理请求时还是处理请求后。

下表中显示的计数器可指出实现 RPC 请求过程中的延迟。

针对 RPC 处理的性能计数器

计数器 期望值

MSExchangeIS\RPC Requests

指出当前 Microsoft Exchange Information Store 服务正在处理的 MAPI RPC 请求数。

Microsoft Exchange Information Store 服务在拒绝客户端请求之前,仅可同时处理 100 个 RPC 请求(默认最大值,除非另行配置)。

  • 应始终低于 30。

MSExchangeIS\RPC Averaged Latency

表示以毫秒为单位的 RPC 延迟,是过去 1024 个数据包的平均值。

  • 应始终低于 50 毫秒。

Microsoft Office Outlook 2003 包含新增客户端监视功能。客户端监视用于查找客户端错误和延迟问题。通过修改服务器的注册表,可启用 Exchange 服务器上的客户端监视功能。启用后,Outlook 2003 客户端会根据连接的状态将数据发送到服务器,其中包括失败的 RPC 请求和错误条件。此信息在服务器上聚合并记录到服务器上的事件日志条目中。有关如何在 Outlook 2003 启用客户端监视的详细步骤,请参阅如何启用 Outlook 2003 客户端监视

在本示例中,服务器受到 CPU 的限制,而且处理器无法及时处理传入 RPC 请求。这意味着 RPC 请求会堆积并长时间延迟。下图显示了这种情况,其中 MSExchangeIS\RPC Requests 计数器始终为平均值 90,MSExchangeIS\RPC Averaged Latency 计数器大约为 146 毫秒 (ms)。

03e643b3-abbf-4dfc-b0f0-fbc09dc7820a
 
显示: