这个其实没有固定的算法,必须根据压测的目标特点进行估算。
以你的例子来说明:
要求支持5000-10000用户访问的购物网站,是在同一时间访问?还是一天的访问量呢?如果是一天的访问量,那么我们需要知道哪几个时间段访问人数最多。例如有10小时访问密集区,我们可以估算每小时1000用户,峰值*2或者3,也就是每小时3000,那么合计一秒钟只要3000/3600 还不足1个并发。
如果是并发,那么就要测5000到10000了。
实际上你这是用客户视角来思考问题的,建议你采用服务器视角。
也就是说,你只管加压,看看服务器到多少并发达到峰值,用这种方法来指导网站程序和部署的优化,这才是最科学的。
并发用户数量的统计方法目前还没有准确的公式
一般的并发用户数量的经验公式为:
使用系统的用户数量×(5%~20%)。
对于这个公式,没有必要拘泥于计算出的结果,因为为了保证系统的扩展空间,测试时的并发用户数量都会稍稍大一些,除非要测试系统能承受的最大并发用户数量。
举例说明:你的系统支持10000个用户访问,
在基本压测情况下,你在设置最大并发用户数量时最多10000*0.2=2000就可以了。
并发用户数的计算公式
系统用户数:系统额定的用户数量,如一个OA系统,可能使用该系统的用户总数是2000个,那么这个数量,就是系统用户数
同时在线用户数:在一定的时间范围内,最大的同时在线用户数量
平均并发用户数的计算:
C=nL / T
其中C是平均的并发用户数,n是平均每天访问用户数,L是一天内用户从登录到退出的平均时间(操作平均时间),T是考察时间长度(一天内多长时间有用户使用系统)
并发用户数峰值计算:
C^约等于C + 3*根号C
其中C^是并发用户峰值,C是平均并发用户数,该公式遵循泊松分布理论
你可以去g搜索引擎查查