windows操作系统带的性能监视器非常有用,当我们部署了exchange服务器之后,有非常多的exchange的性能指标可供我们去监视分析,比如磁盘I/O的、网络的、内存的、CPU的、exchange关键服务的等等。通过分析这些性能指标,就能够很好的帮助我们去发现和提前规避可能的性能瓶颈。
这个性能监视器的工具呢,我们可以直接从exchange的工具箱中打开它,里面有一个exchange系统监视器是专门为exchange server设立的,如图。
打开之后呢,默认已经为我们加载了一部分exchange server的关键性能指标,如图。
比如说,如果RPC的平均延迟比较高,那就要去分别看是不是我们的网络或者磁盘有性能方面的瓶颈。
而且对于各个性能指标微软都有最佳实践推荐的参考值,具体我们可以参考微软的官方网站:
官方的所有计数器列表及参考值参考:邮箱服务器计数器: Exchange 2010 帮助
https://technet.microsoft.com/zh-CN/library/ff367871(v=exchg.141).aspx
关于exchange 2013或exchange 2016的性能指标,可以去参考对应的帮助文档,对于不同的exchange平台,他们的性能指标是有一定的差异的,这一点需要注意。
一般我们在收集性能指标的时候,会收集一段时间的性能信息,这个时候呢我们需要去创建性能收集的计划任务,比如通过计划任务来收集上午8:00到下午6:00的性能信息。
首先我们可以手动自定义一个数据收集器,可以自定义选择非常丰富的exchange性能指标,如图。
然后为创建好的数据收集器集设置计划任务,如图。
某些人可能会问,我怎么知道要收集哪些性能指标呢,关于这方面的内容,就需要大家去看我上面分享的官方链接了,里面有关于性能指标的详细介绍,我们可以去选择收集自己需要的性能信息。
也可以把所有exchange的性能指标都收集下来,对exchange进行一个全面的性能检查,对于收集的信息呢,我们可以借助一款工具perfinsight来进行查看,这个工具在后面的文章中我会做更详细的介绍。
比如关于exchange database的指标包括:
\msexchange Database(*)\database Cache Size (mb)
\msexchange Database(*)\i/o Database Reads (attached) Average Latency
\msexchange Database(*)\i/o Database Reads (attached)/sec
\msexchange Database(*)\i/o Database Reads (recovery) Average Latency
\msexchange Database(*)\i/o Database Reads (recovery)/sec
\msexchange Database(*)\i/o Database Reads Average Latency
\msexchange Database(*)\i/o Database Reads/sec
\msexchange Database(*)\i/o Database Writes (attached) Average Latency
\msexchange Database(*)\i/o Database Writes (attached)/sec
\msexchange Database(*)\i/o Database Writes (recovery) Average Latency
\msexchange Database(*)\i/o Database Writes (recovery)/sec
\msexchange Database(*)\i/o Database Writes/sec
\msexchange Database(*)\i/o Log Reads Average Latency
\msexchange Database(*)\i/o Log Reads/sec
\msexchange Database(*)\i/o Log Writes Average Latency
\msexchange Database(*)\i/o Log Writes/sec
\msexchange Database(*)\log Buffer Commit Flushes/sec
\msexchange Database(*)\log Buffer Flushes/sec
\msexchange Database(*)\log Bytes Generated/sec
\msexchange Database(*)\log Bytes Write/sec
\msexchange Database(*)\log Checkpoint Depth
\msexchange Database(*)\log Record Stalls/sec
\msexchange Database(*)\version Buckets Allocated
这些指标我们都是可以去性能监视器里面去看的,如果不明白具体指标的含义,是需要我们去阅读官方网站的文章的。