资源监视器以及如何发现磁盘 I/O 问题?

资源监视器以及如何发现磁盘 I/O 问题?

我有一个运行普适 SQL 的应用服务器和使用它的应用。上周用户抱怨该应用性能不佳,我怀疑是磁盘 I/O 问题,因为 CPU 和 RAM 使用率都很好。

这是我的资源监视图表,如果您可以告诉我如何正确读取它们以及我是否遇到磁盘 I/O 问题。

  • 磁盘C:- 系统磁盘
  • 磁盘 E: - 应用程序及其所有数据

在此处输入图片描述 在此处输入图片描述 在此处输入图片描述 在此处输入图片描述 在此处输入图片描述

答案1

磁盘队列长度通常是首先要考虑的地方。如果只是磁盘上的 SQL(假设分区正确),那么队列长度超过 1+ 就是有问题的,除非您正在执行大量基于磁盘的查询。

在打开的资源监视器中,您还可以向下展开左侧的部分并按队列排序以查看哪个应用程序占用了磁盘。

如果只是 SQL 速度慢,那么最好查看一段时间内服务器上是否有任何慢查询。在我使用过的大多数应用程序中,SQL 也受 CPU 限制。

答案2

我怀疑您的图表是否对故障排除有用,因为它们仅显示吞吐量。另外,您没有指出您的存储设置。
在问题期间使用基本计数器运行 perfmon。使用 PALhttp://pal.codeplex.com/releases/view/51623 分析结果日志,它会给你一些图表,并在你遇到性能问题时发出警告。
为了了解详细信息,我建议阅读以下文章: http://www.grumpyolddba.co.uk/monitoring/monitoring.htm(关于计数器的部分) http://www.brentozar.com/sql/sql-server-performance-tuning/ http://www.sqlservercentral.com/blogs/sqlmanofmystery/2009/09/14/the-fundamentals-of-storage-systems-introduction/

答案3

如果您想检查磁盘 I/O 性能,可以从 EPEL repo 安装 bonnie++。安装后,只需以非特权用户身份运行 bonnie。Bonnie 将在您的磁盘上创建并读取一个文件来测量磁盘性能。这个文件会相当大,实际上有几 GB。Bonnie 将为您提供有关延迟、创建时间、读取时间等的信息,包括顺序数据和随机数据。

相关内容