这可能是一个错误的问题,但是,在asp.net Web应用程序上复制大量负载的最佳方法是什么?有没有简单的方法来模拟特定页面上的许多请求?或者最好是使用分析器跟踪单个请求,然后在性能良好的情况下解决这个问题?
了解Web应用程序与服务器规范的协作效果会很好.我希望能够在我的测试服务器上模拟大量流量,这样我就可以确定生产服务器是否足够好(特别是使用iis/asp.net而不是db性能).
尝试http://loadimpact.com到目前为止我找到的最好的,但我找不到它的替代品.
我建议你先做一些自动化测试.使用硒.
然后部署selenium网格以同时在多台计算机上进行测试.
虽然Selenium作为一种自动化测试工具运行速度非常快,但需要进行小型压力测试.如果您同时在网络上的几台计算机上运行相同的自动化,您将能够看到它的行为方式.
如果你想记录响应时间,他们有一个很酷的api你可以用来编写一些脚本来运行你的自动化.
编辑:Selenium非常易于使用,如果要测试内容,它会对页面内容进行断言.如果您愿意,它还会复制您在页面中的移动(这将是我的建议),只需浏览页面,然后将其保存为自动化.避免放置断言,以便硒可能运行得更快.
JMeter就是这样一个工具.可能有点难以学习和配置,但它通常是值得的.
该AB(apache的替补)工具可以让你多请求发送到一个页面上指定要多少客户使用多少并发连接你想要的.
这可能是开发网站的第一步.只测试一些特定负载的页面.这种基准测试方式可能存在一些问题,例如缓存过度使用.
稍后您可能需要一个模拟某些具体流量而不是单个页面的工具.我还没有这种工具的便士.
也许磨床会有帮助吗?您可以通过线程和轻量级进程模拟并发请求,或者在多台计算机上分发测试.我每次都成功地使用它.
我们尝试了一些应用程序,包括商业产品的试用和免费提供的试验.最终,它是我们尝试过的Team Test Load Agent软件的试用版.它绝对有效并且使用起来相当简单.从长远来看,它支持了我们的论点,即转移到Team Foundation Server并为部门的所有部分配备适当的工具.
然而,明显的缺点是价格.