Web服务器负载测试工具

25

你能否推荐一个具有GPLv许可证的软件工具,用于执行Web服务器的负载测试?

8个回答

30

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提供了完整的解释。

12
  1. Tsung 是我目前使用过的最好的工具。您可以创建实际的使用模式。

  2. Apache 基准测试 最容易使用,并且随 Apache 一起提供。更简单易用,但在测试和创建更真实的负载模式时不太灵活。


非常感谢推荐tsung,它可以记录会话并进行回放,我一直在寻找这样的工具!太棒了! - JazzCat


6

如果您需要创建自定义结果图表,我认为Jmeter是最好的解决方案。 - djangofan

2
我建议使用“无头”PhantomJS(与Selenium WebDriver有关)或使用Selenium HTMLUnitDriver。 将负载测试包装在JUnit类中。 使用Maven Surefire或Gradle(使用maxParallelForks的过滤测试任务)多线程分叉测试。 Gradle或Maven将创建一个JUnit报告(通过CSS转换),显示每个测试和它所需的时间。
如果您使用Windows,可以使用我的.bat 脚本启动Grid节点和Hub,以便并行运行,使用多台计算机供应负载。

2

您可以通过运行apt-get install wbox来尝试使用wbox。

然后在hping.org/wbox/上向下滚动查看示例。

全面列表请参见Speed Tools


2
如果您有生产工作负载,那么您可以使用tcpcopy将其复制到测试系统。这种测试更加有效和真实。

0

同时,还要考虑在无头浏览器环境下重新利用Selenium WebDriver功能脚本的方法,以便您可以运行多个实例。随着云端虚拟机的普及,这种方法变得越来越流行。


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