ASP.Net应用程序压力测试

42

在将ASP.NET应用程序移至生产环境之前,有哪些不同的方法可以进行最佳水平的压力测试?

3个回答

45

这里是用于ASP.NET应用程序压力测试的免费工具。

https://learn.microsoft.com/en-us/archive/blogs/alikl/stress-test-asp-net-web-application-with-free-wcat-tool

另一个工具称为ASP.NET性能工程,它会告诉我们如何对应用程序进行压力测试。

https://learn.microsoft.com/en-us/archive/blogs/alikl/asp-net-performance-engineering-stress-test-your-architecture-design-and-code

同时请阅读以下文章:

如何最好地对网站进行压力测试?

从我的经验来看,在进入生产环境之前,请注意以下几点:

  1. 在web.config中将debug设置为false。

  2. 在web.config中将trace enabled设置为false。

  3. 始终使用编译过的代码版本。

  4. 将项目编译为发布模式。

  5. 如果您使用的是ASP.NET 2.0或更高版本,请发布您的代码。

  6. 尽可能使用缓存API。

  7. 减少HTML KB。

  8. 从ASP.NET HTML代码中删除空格。

  9. 将样式表作为外部.css文件使用。

  10. 如果可能,请使用IIS Compression。

  11. 将您的JavaScript文件放在.js文件中。

  12. 使用Server.Transfer而不是Response.redirect。

  13. 如果可能,请使用Inproc Session State。

  • 高效使用Viewstate- 使用控件状态而非Viewstate,这是asp.net 2.0中的新特性。

  • 避免为控件取大名,这会增加HTML文件大小。

  • 使用

    代替表格,这将减少文件大小。

  • 根据需求进行IIS性能调优。

  • 以下链接教导我们在生产环境中进行良好部署的方式。

    http://www.vbdotnetheaven.com/UploadFile/dsdaf/111222006014732AM/1.aspx


    感谢您提供这个精美的清单。我已经几乎解决了您提到的所有要点。对于视图状态,我们使用http://www.eggheadcafe.com/articles/20040613.asp,它使我们的视图状态完全脱离页面,从而提供了更轻量的HTML。我不确定您所说的“6)用户缓存API”的含义,这也是我没有处理好的唯一问题。 - Vikram
    1
    ASP.NET提供了缓存API。有关缓存API的更多详细信息,您可以在asp.net中找到大量内容。以下是一些不错的链接。 http://www.ondotnet.com/pub/a/dotnet/2002/12/30/cachingaspnet.html http://www.eggheadcafe.com/articles/20060407.asp http://authors.aspalliance.com/aspxtreme/webapps/aspcachingfeatures.aspx - Jalpesh Vadgama
    使用Server.Transfer代替Response.Redirect。 - Alex from Jitbit

    6

    Apache JMeter(http://jmeter.apache.org/)是一款用于压力测试Web应用程序的优秀工具。它可以与任何Web服务器一起使用,而不仅仅是Apache。


    5

    Visual Studio 2010提供了一些非常棒的测试自动化工具,还可以用于负载测试Web应用程序。


    网页内容由stack overflow 提供, 点击上面的
    可以查看英文原文,
    原文链接