您能否建议使用软件工具(使用GPLv许可证)来执行Web服务器的负载测试?
答案 0 :(得分:24)
Curl将允许您非常轻松地运行一系列URL。即
curl -s "http://google.com?[1-1000]"
这将对谷歌进行1000次调用,即
http://google.com?1
http://google.com?2
etc...
然后,您可以将这些调用添加到脚本中,并将它们作为后台作业连续运行。这是http://servermonitoringhq.com/blog/how_to_quickly_stress_test_a_web_server
的完整解释答案 1 :(得分:12)
Tsung是我用过的最好的。您可以创建实际使用模式。
apache benchmark最容易使用,并附带apache。使用起来更简单,但在测试和创建更逼真的负载模式时,网址不灵活。
答案 2 :(得分:9)
尝试以下方法之一:
答案 3 :(得分:6)
如果您还需要对网页/应用进行一些性能/负载测试,请尝试Apache JMeter http://jmeter.apache.org/
答案 4 :(得分:2)
答案 5 :(得分:2)
我建议使用“无头”PhantomJS(与Selenium WebDriver相关)或使用Selenium HTMLUnitDriver。将负载测试包装在JUnit类中。使用Maven Surefire或Gradle(使用maxParallelForks进行过滤测试任务)对测试进行多线程分支。 Gradle或Maven将创建一个JUnit报告(来自CSS转换),该报告显示每个测试和每个测试所用的时间。
如果您使用的是Windows,则可以使用我的.bat scripts to start a Grid Node and Hub来运行并行,使用多台计算机来提供负载。
答案 6 :(得分:2)
如果您有生产工作负载,则可以使用tcpcopy将其复制到测试系统。这种测试更有效,更真实。
答案 7 :(得分:0)
另请参阅在无头浏览器环境中重新使用Selenium WebDriver功能脚本,您可以在其中运行多个实例。这种方法随着云中虚拟机的可用性而变得流行。