networking服务器负载testing

有什么办法来模拟1000访问我们的服务器的访问者? 我们已经完成了一个完整的应用程序重写和重新构build。 我们有一个非常优化的Tomcat服务器,并转向一个Apache前端的Glassfish后端服务器。

目前我们处于“testing”阶段,但只有less数用户积极使用它。 我们每天可以获得30-40万用户(在任何时候最多可以有1000个用户)。 当我们全力以赴的时候,我们不希望它在特定的瓶颈下崩溃或者负担过重。

基本上,是否有任何testing工具可以用来模拟对特定URL的x次调用?

只是想在做负载testing时给你一些指示(正确的testing将在不久的将来减less坏消息)。

我所经历的是,当模拟“真实的”networking服务用户时,使用“真实的”工具。 如Selenium , Watir或Robot框架 。

为什么? 简而言之:这些工具将模拟包含所有内容的 实际浏览器 ,而不仅仅是针对您的服务器的less量JMeter GET / POST请求。 我也是JMeter'ish请求testing的忠实粉丝,但是你必须知道限制。 当你已经发现了一些瓶颈时,JMeter很棒。 据我了解,你还不确定有没有。

Jmeter 不是一个真正的浏览器,正如jmeter文档中所说:

JMeter不是一个浏览器

JMeter不是一个浏览器。 就Web服务和远程服务而言,JMeter看起来像一个浏览器(或者更确切地说,是多个浏览器)。 但是JMeter并不执行浏览器支持的所有操作。 特别是,JMeter不会执行在HTML页面中find的Javascript。 它也不像浏览器那样呈现HTML页面(可以将响应视为HTML等,但是定时不包括在任何示例中,并且一次只能看到一个线程中的一个样本)。 (来源: http : //jmeter.apache.org )

只是想指出,有时在加载testing之后,即使我们进行了适当的负载testing,您仍然可能会发现系统的行为不同。 有时候,人们往往会忘记用户使用浏览器正在做大量的东西,这也是从networking服务器的angular度来看stream量/负载。

只是说。

从ab开始。

还有httperf 。

最后,看看Jmeter 。

如果您已经使用AWS,这是一个非常好的解决scheme:

蜜蜂与机枪

http://blog.apps.chicagotribune.com/2010/07/08/bees-with-machine-guns/

我们需要的是一个解决scheme,它允许我们使用多个地形密切的客户端同时攻击我们的服务器和stream量。

蜜蜂与机枪是一个结构脚本,我放在一起积极负载testing我们的网站。 它提供了旋转EC2实例(蜜蜂)的方法,攻击具有可configurationstream量的目标服务器,然后将这些实例旋转回去。