我有一个相当'重'的ASP.NET页面,目前速度是相当不可接受的 - 有一个很多的数据库通信,并显示大网格。但我实际上想要找出实际上造成最大放缓的因素,并从那里开始工作。
Visual Studio 2008或任何第三方工具内置的工具是否允许我这样做?
答案 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。
尝试使用Yslow和Page Speed或fiddler等客户端开发人员工具查看页面请求及其大小和时间。
如果您还没有这样做,请确保您的服务器正在提供 gzip压缩内容。这是一个轻松的胜利。
使用SQL Server Profiler来分析您的数据库请求。
答案 6 :(得分:0)
有很多可用的分析工具,我个人喜欢ANTS Profiler,它非常好。请查看以下链接,了解有关使用它的更多信息:ANTS Profiler
以下是ANTS Profiler下载的链接:14 Day Free Trial
但是如果有很多数据库通信,那很可能就是原因。尝试最小化数据库调用的数量并提高数据库查询的性能。
还要充分利用缓存!