2012-09-25 76 views
1


我们很有趣运行简单和基本的加载测试我们的新出生的网络应用程序,不太复杂 - 登录或导航在网站中是不必要的 - 只是炸弹我们的网站许多并发事件都会向预定义的URL列表发出请求。简单的加载测试为我的网络应用程序

我正在寻找apache absiege,它看起来非常棒 - 只需几分钟的时间来设置,并且我的网站有很多获取请求,这些平台的问题是,当我定义“GET”请求某些页面它只是点击这个页面,从不请求它的内部资源(图像,CSS和JS),当然我可以将这些资源添加到URL列表,但它不会给我一个真正的结果(#rpm和全部) 。

任何建议我能做些什么?
我可以用apache ab或围攻来做我想要的吗?
你知道一个类似的工具,让我这样做吗?我看着JMeter看起来有点矫枉过正。

Thx。

回答

0

结束了使用httperf
虽然它有许多错误,使许多分段错误令程序崩溃,但它具有很好的功能,可让您使用会话(--wsesslog)。

另一种选择是使用攻城来模拟一个客户端和运行几个客户的并行:
可以说你有一个包含所有你要测试的网址,并包含resources.txt文件url.txt每个文件导入(图片,CSS和JS),这样你就可以使用这个脚本一个通用的资源来模拟客户的数量并行:

#run X users in parallel: 
i=1; 
for line in $(head -|NUMBER OF CLIENTS| urls.txt); do 
    echo $line > client$i; 
    cat resources.txt >> client$i; 
    let "i += 1"; 
done; 

for f in $(ls client*); do 
    siege -c |NUMBER OF CALLS| -r 100 -f $f -b & 
done; 
0

我建议你尝试一个工具,可以让你在浏览器中记录的会话。这些工具通常会捕获每个页面上的所有资源,并将它们包含在测试中。搜索“负载测试软件”将显示许多选项。我将为我们的产品(Load Tester LITE)的免费版本插入一个插件,该插件应该适用于您描述的场景,并且可以让您使用无限数量的用户进行测试。

0

首先,答案:围城常见问题给你two options;两者都是直截了当的。

您的评论,你写的“围城分别将每个URL” - 这不只是,攻城,那是你的浏览器是如何工作的。它通过下载一个HTML文件开始,在该HTML文件中,它将看到指向其他资源(图像,JavaScript文件等)的链接,并将下载这些文件。通过使用sproxy,您可以重新创建查看您的浏览器正在做什么,并将其保存为Siege的说明。

其次,一个建议 - 使用Bad Boy用JMeter;这样,您可以在网站上点击并捕获下载内容,然后使用JMeter重新播放。

第三,请注意 - 通过下载所有图像,链接等,您可以有效地测试Web服务器(Apache,IIS等)的性能,而不是Web应用程序的性能。即使是最强硬的愤世嫉俗的人也许会接受你的网络服务器的性能已经被其他人建立,并且几乎肯定不会成为问题。你真的想测试这个吗?

+0

我wan't看看有多少用户可以同时访问我的网站,因此我希望统计一个页面中的所有资源,因为这对于我来说代表单个用户。因此围攻答案(1)不会帮助我,因为它会单独威胁每个网址,这就是为什么我要测试静态资源(3) – shem

+0

在您的评论之后 - 我完全理解这一点,但是我的目标是看看有多少用户可以同时进入我的主页,换句话说,有多少用户可以访问该页面及其所有资源 – shem

相关问题