【问题标题】:Extremely slow website on IISIIS 上的网站速度极慢
【发布时间】:2012-02-17 18:34:00
【问题描述】:

我正在尝试在本地运行一个网站,但速度很慢。网站使用 DotNetNuke 和 IIS7。 当我创建一个新的空白网站时 - 它运行得很快。这个特别慢。

我尝试了什么:

  1. disabling IPv6 support in browser
  2. Change maximum worker processes in IIS
  3. I do not have AVG installed. And I disabled firewall and antivirus
  4. Remove Ipv6 support in Hosts file
  5. Turn off batch in Web.config

这些都没有帮助

另外,当我需要重新编译我的解决方案时,我的网站响应速度甚至慢了 5 倍。

更新,如果这有帮助,这是我的基本跟踪:

Trace Information
Category    Message From First(s)   From Last(s)
aspx.page   Begin PreInit       
aspx.page   End PreInit         3.87710342363437E-05    0.000039
aspx.page   Begin Init          6.42382822151184E-05    0.000025
aspx.page   End Init            3.07985958803876        3.079795
aspx.page   Begin InitComplete  3.07989531820756        0.000036
aspx.page   End InitComplete    3.07990824188564        0.000013
aspx.page   Begin PreLoad       3.07991584404922        0.000008
aspx.page   End PreLoad         3.07993180859273        0.000016
aspx.page   Begin Load          3.0799394107563         0.000008
aspx.page   End Load            116.812769734266        113.732830
aspx.page   Begin LoadComplete  116.81281078595         0.000041
aspx.page   End LoadComplete    116.812820288654        0.000010
aspx.page   Begin PreRender         116.812828270926    0.000008
aspx.page   End PreRender           205.25318815735     88.440360
aspx.page   Begin PreRenderComplete 205.253225407951    0.000037
aspx.page   End PreRenderComplete   213.774178871307    8.520953
aspx.page   Begin SaveState         215.060896371107    1.286717
aspx.page   End SaveState           215.279060220539    0.218164
aspx.page   Begin SaveStateComplete 215.279100892114    0.000041
aspx.page   End SaveStateComplete   215.279114576008    0.000014
aspx.page   Begin Render            215.279130160444    0.000016
aspx.page   End Render              217.466907021738    2.187777

【问题讨论】:

  • 你有没有做过性能测试,看看为什么它的代码很慢?
  • 没有。同一个网站的生产速度很快。
  • 你安装了调试器吗?
  • @Daniel A. White,我不确定如何检查,但我在 webconfig 中有 debug=false。
  • 这个特别慢的网站是用什么语言编写的? App.Config 中是否有可能针对每个请求运行的代码?

标签: c# .net iis


【解决方案1】:

由于它在生产环境中运行速度很快,但在您的机器上运行速度很慢,因此它可能是与外部资源(即数据库或其他资源)的连接。

Enable Tracing 在您的应用程序中,然后查看处理时间过长的地方。您可以通过在整个应用程序中您认为可能导致问题的地方添加跟踪消息来帮助缩小范围。

您还可以查看这是否发生在另一个具有干净操作系统的工作站上,以确定它是否可能是您的本地计算机上的某些东西导致了问题。

【讨论】:

  • 谢谢,我启用了追踪,现在在哪里可以看到结果?
  • 浏览到您网站中的 trace.axd,或者如果您将 pageOutput 设置为 true,则在您的页面上向下滚动。
  • 好的。用我的第一个跟踪信息表更新了帖子。这是否意味着我必须查看 pageload 或 page_prerender 事件?它们几乎是空的。
  • 您确实需要查看这两个地方,因为它们肯定会导致您的性能问题。我首先要看的是与任何外部资源、Web 服务、数据库、外部文件等的连接。在每个位置的开头和结尾添加 Trace.warn 消息,以便为您提供特定的时间。
【解决方案2】:

您可以抓住ANTS Performance Profiler from Red Gate,看看它是否为您指明了正确的方向。有 14 天的免费试用期,我过去曾使用此工具来查找瓶颈和其他问题,值得每一分钱。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-01-23
    • 2013-06-18
    • 2012-05-21
    • 1970-01-01
    • 2018-05-12
    • 2014-02-27
    • 2016-07-29
    • 2012-06-18
    相关资源
    最近更新 更多