初略估计并发业务数目,并发请求数目的方法

看了篇好文章,如下:

 

个人的一些理解。仅供参考。
首先我基于对你的理解是的是“首页并发访问数”(如果理解不对,是首页并发用户数,也可以根据下面理解转换)
你只提到了首页,访问首页只是业务场景之一,需要你考量所有业务场景。不同网站的业务场景不同。所以你需要根据以下理解,得出自己网站的场景和计算结果。
一些给出涉及概念:
1.业务并发用户数;2.最大并发访问数;3.系统用户数;4.同时在线用户数;
假设一个OA系统有1000用户,这是系统用户数;最高峰同时有500人在线,是“同时在线人数”,也称作“最大业务并发用户数”;500个同时使用系统用户中20%查看系统公告,不构成压力;20%填写表格(只在提交时才会请求,填写对服务器不构成压力);40%在发呆(什么都没做);20%用户不停从一个页面跳转另一个页面(只有这20%对服务器产生了压力)。
说明服务器实际压力,能承受的最大并发访问数,既取决于业务并发用户数,还取决于用户的业务场景,这些可以通过对服务器日志的分析得到。
一般只需要分析出典型业务(用户常用,最关注的业务操作)
给出一个估算业务并发用户数的公式(测试人员一般只关心业务并发用户数)
C=nL/T   
C^=C+3×(C的平方根)
C是平均的业务并发用户数、n是login session的数量、L是login session的平均长度、T是指考察的时间段长度、C^是指业务并发用户数的峰值。
该公式的得出是假设用户的login session产生符合泊松分布而估算得到。
假设OA系统有1000用户,每天400个用户发访问,每个登录到退出平均时间2小时,在1天时间内用户只在8小时内使用该系统。
C=400×2/8=100
C^=100+3×(100的平方根)=100+3×10=130
另外,如果知道平均每个用户发出的请求数u,则系统吞吐量可以估算为u×C
请注意:精确估算,还要考虑用户业务操作存在一定的时间集中性(比如上班后1小时内是OA系统高峰期),采用公式计算仍然会存在偏差。针对例子OA系统可以把1小时设定为考察时间的粒度,将一天8小时划分为8个区间,这样可以解决业务操作存在集中性问题,更趋于精准,偏差更小。

 

 

平均日访问量(次/日)=用户数 * 访问页数 * 页平均连接数 / 每月天数

平均每小时访问量(次/小时)=平均日访问量 / 每天访问时间

平均每秒访问量(次/秒)=平均每小时访问量 / 3600  

峰值日访问量(次/日)=用户数*访问页数* 页平均连接数 / 峰值天数

峰值小时访问量(次/小时)=峰值日访问量 / 每天访问时间

峰值每秒访问量(次/秒)=峰值小时访问量 / 3600  

平均日吞吐量(Mbytes/日)=平均日访问量*每个连接下载量(K) / 1024

平均每秒吞吐量(Kbytes/秒)=平均每秒访问量*每个连接下载量(K)

高峰时每秒吞吐量(Kbytes/秒)=峰值每秒访问量*每个连接下载量(K)

猜你喜欢

转载自newslxw.iteye.com/blog/1772511