找出什么减慢了ASP.NET页面的速度

时间:2011-07-12 16:02:38

标签: c# asp.net

我有一个相当'重'的ASP.NET页面,目前速度是相当不可接受的 - 有一个很多的数据库通信,并显示大网格。但我实际上想要找出实际上造成最大放缓的因素,并从那里开始工作。

Visual Studio 2008或任何第三方工具内置的工具是否允许我这样做?

7 个答案:

答案 0 :(得分:2)

您可以使用ASP.Net Trace找出页面中放慢速度的内容。

答案 1 :(得分:2)

另一个好用的工具,易于使用,https://addons.mozilla.org/en-US/firefox/addon/yslow/

不直接针对代码,但对资源非常有帮助

答案 2 :(得分:0)

你听说过profiling吗?

我最喜欢的工具是RedGate的Ants Performance Profiler

答案 3 :(得分:0)

一种简单的方法是使用Stopwatch。像这样:

void SlowMethod()
{
   Stopwatch timer = new Stopwatch();
   timer.Start();
   //a lot of DB operations
   timer.Stop();
   //record timer.Elapsed

   //restart the timer and check another piece of code
   //at last find the bottle neck of the method
}

答案 4 :(得分:0)

穆罕默德所说的 - 在你的代码中添加跟踪以识别最慢的位。

此外,如果您认为db活动可能负责,您可以运行SQL profiler来识别任何长时间运行的查询 - 这也可以帮助您更正索引。

答案 5 :(得分:0)

一些想法:

Visual Studio Team System有一个内置的分析器。在VS 2010中,这是高级及以上版本。

否则red-gate有一个好的分析器可用。 (收费)。

尝试使用内置于asp.net的tracing functionality

尝试使用YslowPage Speedfiddler等客户端开发人员工具查看页面请求及其大小和时间。

如果您还没有这样做,请确保您的服务器正在提供 gzip压缩内容。这是一个轻松的胜利。

使用SQL Server Profiler来分析您的数据库请求。

答案 6 :(得分:0)

有很多可用的分析工具,我个人喜欢ANTS Profiler,它非常好。请查看以下链接,了解有关使用它的更多信息:ANTS Profiler

以下是ANTS Profiler下载的链接:14 Day Free Trial

但是如果有很多数据库通信,那很可能就是原因。尝试最小化数据库调用的数量并提高数据库查询的性能。

还要充分利用缓存!