siege 如何提高实际最高并发数

因为测试的是应用系统,所以从根本上来讲,并发数应该是从应用系统的业务需求来的,所以也应该从应用需求文档中来,但是,国内应用系统的需求文档基本上很少包括并发用户这样的性能需求。

考虑并发数的时候,主要还是要从被测系统的业务场景出发,多种因素结合考虑。如果你能拿到被测系统实际运行的日志,分析出访问用户的情况,那么根据这个定义并发数当然是比较接近真实的。

如果是新系统,就要根据多种因素考量,相关的说法有:

1、在线用户或者终端数:即同时在使用应用系统的用户,可能在浏览,可能在做交易。如果是知道了,一般并发用户数取在线用户的10%-30%。(思考时间适当调短或者不用,不要使用回放录制的思考时间)

2、交易总数和预期响应时间:如果你知道了每天(8小时)要完成20000笔交易,每笔交易希望在5秒内,那么可以预估并发用户数为20000/(8×3600)×5,当然这个并发数还要根据你实际测出的响应时间再调整

3、八二原则:一般可以认为80%的用户在20%的时间内完成工作,所以峰值压力的时候,一般并发数要乘以80%/20%=4

4、如果你的系统终端数量是固定的,比如就有100个客户端,那么极限压力就是这100个客户端都疯狂工作,所以峰值并发数也就是100,去掉脚本中的思考时间。

当然还有其他很多的考虑,以上就算是一个初步的参考吧。