哪些性能计数器对 Windows 服务器性能最重要?

哪些性能计数器对 Windows 服务器性能最重要?

我们有一个网站,它有时会运行缓慢,甚至完全挂起。我临时在性能监视器中设置了默认系统性能数据收集器,看看这是否能提供一些帮助。

但是,默认的数据收集器会收集大量的计数器,并生成巨大的日志文件。仅 8 小时的数据就产生了 4GB 的数据。

在判断服务器负载时,哪些性能计数器最重要?另外,如果让这些数据收集器无限期地运行,是否会引起性能问题?显然,我不知道服务器何时会出现性能下降,因此我需要那里的日志,以便我可以检查它们。如果能提供任何其他有关监控服务器性能的具体指导,我将不胜感激。

操作系统是 Windows Server 2008 R2(Web 版)。

答案1

在判断服务器负载时,哪些性能计数器最重要?

几乎全部,但您可能应该从 CPU %、私有工作集和 IOPS 开始。

如果让这些数据收集器无限期地运行,是否会带来性能问题?

是的,主要是 I/O、内存、CPU、磁盘空间。基本上按这个顺序。

我不知道服务器何时会出现性能下降的情况,因此我需要那里的日志,以便我可以检查它们

现在你有所收获了。你需要做根本原因分析

在执行此操作之前,应该对您的生产(测试环境)的副本进行基准测试、严酷测试、终止测试,然后进行事后分析,这样您就永远不会在生产中遇到这种情况。

性能可以有无数种不同的含义。您可以设置性能好坏的标准,这取决于您的服务和 SLA。MS 有一个关于性能计数器的非常好的文档

如果您不知道是什么导致了性能问题,您可以先隔离服务并逐一调试。您正在运行 Web 服务器吗?请先检查您的 CPU。您正在运行数据库吗?请检查您的 IOPS,等等。

显然,我不知道服务器何时会出现性能下降的情况,因此我需要那里的日志,以便我可以检查它们

一般来说,你至少需要有以下三重功能:监控、警报和日志聚合。

性能计数器可以很好地完成工作,但它们仅提供后者。这就是为什么您需要一些警报(例如 Nagios)和一些持续监控(例如 cacti、munin)。

答案2

我至少会记录以下值:

  • % 空闲 CPU 时间(总计)——检测 CPU 瓶颈
  • % 每个物理磁盘的空闲磁盘时间 - 检测磁盘瓶颈,特别是当您依赖机械硬盘时。
  • 内存/已提交字节数——检测接近物理 RAM 数量的内存需求。

如果服务器速度慢,请检查这些值并查看哪个值是问题所在。如果是磁盘问题,请检查已提交的字节数以查看磁盘活动是否可能是由于 RAM 不足造成的。

不幸的是,除非您以非常小的间隔进行记录,否则这不会检测到瞬时大 RAM 需求。最佳指标是峰值提交费用,但它不会通过性能计数器显示。

相关内容