IIS6 CPU 峰值

IIS6 CPU 峰值

有什么好工具可以确定哪些资源导致 CPU 峰值和平坦线 @ 100%?我有一台服务器上有 10-15 个网站,我需要找出负载来自哪里以及造成压力的页面。

答案1

有多少个应用程序池?您可以先将网站移到单独的应用程序池中,然后使用任务管理器 + 命令行 iisapp 来匹配哪个应用程序池与哪个任务匹配。这将帮助您确定要从哪个网站开始。

一旦确定了这一点,就可以获取微软 IIS 调试工具:http://www.microsoft.com/downloads/details.aspx?FamilyID=28bd5941-c458-46f1-b24d-f60151d875a3&DisplayLang=en

然后:

使用 IIS 调试诊断来排除 II6 中工作进程 CPU 使用率故障

IIS7 中的失败请求跟踪功能可以帮助追踪网站的许多性能问题,但我们在 IIS6 上仍有广泛的客户群。在 Microsoft 发布了一套可以更深入地分析堆栈跟踪的工具之前,解决 IIS6 中的性能问题一直非常困难。

IIS 调试诊断工具可以帮助跟踪工作进程中的 CPU 和内存问题。Microsoft 有一篇很好的知识库文章,其中也介绍了基础知识:http://support.microsoft.com/kb/919791

  1. 在系统本地安装 IIS 调试诊断。

  2. 在开始 > 程序 > IIS 诊断 > 调试诊断工具 > 调试诊断工具下打开调试诊断工具。

  3. 单击“工具”>“选项和设置”>“性能日志”选项卡。选择“启用性能计数器数据记录”选项。单击“确定”。

  4. 使用任务管理器找到工作进程的PID。

  5. 选择“进程”选项卡并在列表中找到该进程。

  6. 右键单击该进程并选择“创建完整用户转储”。这将需要几分钟,然后会弹出一个框,提供转储文件的路径。

  7. 选择高级分析选项卡并单击添加数据文件按钮。浏览到创建的转储文件并单击确定。

  8. 从可用分析脚本框中选择崩溃/挂起分析器,用于 CPU 性能和崩溃分析。单击开始分析。

几分钟后,应生成一份报告,其中包含堆栈跟踪信息以及有关执行时间超过 90 秒的任何请求的信息。请注意,内存转储将使用几百兆字节的空间,因此请确保将该工具安装在具有足够调试空间的驱动器上。此外,如果机器负载很重,您可以在系统上创建用户转储,将文件复制到工作站,然后在本地执行分析。

答案2

相关内容