【发布时间】:2012-10-22 08:42:39
【问题描述】:
我刚刚开始在一个用 .net 2.0 编写的网站上工作。页面加载时间很长,响应时间很短,不知道从哪里开始以提高相同的性能。
硬件不是问题,内存够用,处理器也够用。
我应该从哪里开始并提高性能的任何想法。
【问题讨论】:
标签: asp.net .net performance sql-server-2005
我刚刚开始在一个用 .net 2.0 编写的网站上工作。页面加载时间很长,响应时间很短,不知道从哪里开始以提高相同的性能。
硬件不是问题,内存够用,处理器也够用。
我应该从哪里开始并提高性能的任何想法。
【问题讨论】:
标签: asp.net .net performance sql-server-2005
您可以使用名为 Antz Profiler 的工具,并针对此工具在本地运行您的 Web 应用程序。
http://www.red-gate.com/products/dotnet-development/ants-performance-profiler/。这将帮助您识别应用程序中昂贵的方法。然后,您可以分解调用并尝试确定代码是否昂贵或可能是数据库调用。
尝试重构并确定您认为可以改进的任何代码,然后一旦完成,就可以进行外部调用。
如果您有数据库调用,则可以使用 SSMS 来识别查询中的任何问题。运行查询时,您可以使用“包括实际执行计划”来显示瓶颈所在。
SSMS 查询优化教程:http://www.simple-talk.com/sql/sql-training/the-sql-server-query-optimizer/
Antz 演练:http://www.red-gate.com/products/dotnet-development/ants-performance-profiler/walkthrough
这里还有一个提示链接,用于检查页面速度的一般事项:http://www.aspnet101.com/2010/03/50-tips-to-boost-asp-net-performance-part-i/
此外,您可以使用 Firefox 中的 YSlow 等工具来检查 http 请求等,以了解可以减少网络调用的地方。
【讨论】:
您首先对应用程序进行概要分析,以找出它花费最多时间的地方。
当你发现这一点时,你就会想出如何解决顶部瓶颈的想法。
尝试修复后,请再次分析以了解您是否有所作为 - 如果没有,请回滚更改并尝试其他方法。
如果成功,重复上述过程。
流行的分析器是 dotTrace 和 ants profiler,它们都是商业产品。
【讨论】: