windows – 你怎么知道w3wp.exe在做什么? (或如何诊断性能问题)

前端之家收集整理的这篇文章主要介绍了windows – 你怎么知道w3wp.exe在做什么? (或如何诊断性能问题)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在我们制作的网站上遇到了性能问题,而且我不确定如何开始诊断它.

简短的描述是:我们有一个非常小的站点(http://hearablog.com),流量非常小,在一个糟糕的专用服务器中,cpu总是非常高,有时几分钟保持100%,而w3wp.exe占用了大部分.典型的情况是w3wp.exe需要60%,而sql Server需要大约30%.
我们的DB也很小.

详细说明和更多细节:

>该网站由Cari.Net托管在一个非常糟糕的服务器上.从一开始我们就感觉服务器的行为不正常,就像有些东西需要的时间太长,所以这可能是一个配置问题.也许我们正在获得一个虚拟服务器,而我们应该有一个专用服务器,虽然我们没有证据表明这一点,除了服务器往往很慢的事实.
>服务器是Windows 2008 Standard 64位,带有sql 2008 Express
>硬件是Celeron 2.80 GHz,1Gb RAM
>该网站是在ASP.Net MVC中开发的,使用Entity Framework进行数据访问.
>现在,这是非常糟糕的硬件,但我有这些家伙的其他服务器,具有相同(或更糟)的硬件,并且性能比这个好得多.也就是说,其他服务器有W2003和sql2005,我使用ASP.Net“WebForms”2.0,没有MVC,没有LINQ,没有EF;所以我不确定是否要进入2008年/其他东西意味着预期会有很大的性能损失.
>我经常提供MP3文件(5-20​​ Mb),这是一个有点不寻常的负载,可能是造成某种问题?
这会导致w3wp使用大量的cpu吗?
>磁盘使用率似乎非常低.内存通常约为90%,但磁盘使用情况似乎表明它的分页不多.
>我每天都会收到大量关于sql超时的电子邮件,对于超过30秒的查询,尽管我们所有的查询都非常简单(或者应该是,但EF可能会搞砸它).

这是资源监视器在100%cpu的这些“冲刺”之一中的样子,以防有任何有用的东西.

以及一些性能计数器的快照:

现在,令我困惑的是w3wp的cpu使用率如此之高.
真的不应该做多少……
所以我的问题是……

>有没有办法找出它正在做什么?也许甚至简介呢?
>我应该关注的任何表现计数器?
>鉴于此硬件/软件配置,这是否可以预期?
>这可能是某种配置失败造成的,你会从哪里开始寻找?

非常感谢你.
Daniel Magliola

您还可以使用IIS管理器中的工作进程UI,检查当前正在执行的请求,并查看它们被卡住的位置(如果有).
打开IIS管理器 – >单击树中的服务器 – >双击工作进程图标 – >双击正在使用cpu的工作进程实时查看当前正在执行的请求,以便您可以看到正在执行的模块时间.

还要考虑使用失败请求跟踪来跟踪每个请求的某些时间,以查看它们花费很长时间的位置.

猜你在找的Windows相关文章