使用Application Center Test (ACT)来做压力测试
在我们完成了基于SPS2003的开发,实现了我们的具体应用以后,我们是不是就可以直接请用户来使用了呢?如果我这么做,那么有经验的开发人员一定会对此嗤之以鼻:居然连压力测试也不做!真是不想活了……
呵呵,是啊。开发环境往往只考虑功能,到了具体环境中,就需要考虑有大量的用户来访问的时候,很多功能会不会出错?性能会怎么样呢?……我们这里就简单看看,怎么来做压力测试。
相信作压力测试肯定有很多工具,而我们一般使用的,现在很多是Application Center Test (ACT)。这个东东是VS.NET中的一个组建,很简单,容易上手,而且支持脚本,也可以实现复杂的功能……
这里省略测试步骤,假设我们只是直接对一个网站做测试,例如Test.SendRequest("http://server/default.aspx")。现在怎样来分析结果呢?
下面是我刚学到的一些信息,和大家共享,希望对于有经验的朋友,起一个抛砖引玉的功能。
1. 首先,检查一下又没有错误,例如401用户没有验证的错误。如果有错误,那么结果肯定是不对的,也不用看了。
2. 分析Average requests per second,应该就是“每秒平均请求”。
我们可以多测试几次,使用1、2、5、10、50、100、200……的并发浏览器连接数目。然后,我们可以把几次结果放在一个图表中来分析。
一般情况下,随着并发浏览器连接数目的增加,Average requests per second的数目也会增加,但当到了某一个值以后,再增加就反而导致Average requests per second下降了。那么,这个值就差不多是服务器能支持的最大并发浏览器连接数目。
3. Average time to last byte
是发送请求以后,到收到服务器响应结束的时间。
显然,一般情况下,随着并发浏览器连接数目的增加,这个值是会随着变大的。一般情况下,分析这个值是不是合理,可以参考下面的标准:
0.1秒: 非常快了
1秒: 速度还是非常快的,基本不用考虑性能问题
3 – 4秒: 对于内部网络,可以接受的一个结果
5 – 8秒: 对于外部网络,可以接受的一个结果
10秒以上: 太慢了一些
4. Average time to first byte
一样,只不过是发送请求以后,到收到服务器响应开始的时间。
欢迎大家讨论,发表关于ACT的经验。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。