【问题标题】:Asp.net application bottleneck identification: any suggestion?Asp.net 应用程序瓶颈识别:有什么建议吗?
【发布时间】:2011-04-10 15:06:28
【问题描述】:

我们正在努力找出当我们从暂存服务器传递到生产服务器时 ASP.NET 应用程序性能下降的原因,我们希望收到您的来信,以帮助我们找到瓶颈。

我们的暂存服务器是 Intel Core 2 Quad CPU Q8200 (2.33 GHz),配备 4GB RAM,Windows Server 2003 R2 SP2 x64 Edition。数据库托管在 Sql Server 2008 Express Edition 上。一切似乎都很顺利。页面更改几乎是立即的广告页面加载时间(例如在网格中切换页面)是可以的。

我们的生产服务器是虚拟双 Intel Xeon 3.00 GHz,2GB RAM,Windows Server 2008 Web Edition SP2 x86 Edition。数据库托管在 Sql Server 2008 Web Edition 上。

我们的应用程序是使用经典最佳实践(母版页、CSS、AJAX、数据分页、静态资源客户端缓存、IIS 上用于静态和动态资源的 gzip 压缩)的 .NET 3.5(目前正在迁移到 .NET 4) ,用于不经常更改的数据的服务器端缓存...)。

我真的不明白是什么导致应用程序在这两种情况下运行如此不同。那会是什么?缺少的内存?生产服务器上的负载?网络限制?

我可以做些什么来缩小瓶颈的研究范围?

【问题讨论】:

    标签: asp.net performance


    【解决方案1】:

    您可以在生产服务器上短暂启用跟踪(不要忘记将其关闭)并查看页面加载的哪些阶段需要这么长时间)。

    【讨论】:

    • 这是一个很好的建议,但是......我怎样才能发现这些长的加载时间是否是由应用程序不同的东西引起的(即在服务器上加载?)
    • @Marconline - 我认为这可能是一个很好的起点。您可以查看您的代码是否运行缓慢 - 如果不是,则可能是网络带宽。您还可以密切关注服务器上的进程监视器。
    【解决方案2】:

    如果您可以轻松地向虚拟服务器添加 2 GB 的 RAM,请尝试这样做,这很简单而且可能很重要。在任务管理器中检查您的 RAM 使用情况,看看您正在使用多少。

    这些服务器是托管在同一个地方还是可能存在网络延迟差异?

    在服务器上,运行 perfmon.msc 并观察计数器,什么是最大值?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-02-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-21
      • 1970-01-01
      • 2017-02-02
      相关资源
      最近更新 更多