想知道这个怎么计算请求接口多少次 起始人数是 5 最多人数 10,每次持续 30 秒
那是不是每秒请求 5 次持续 30 秒,然后每秒请求 10 次持续 30 秒。计算公司 5*30+10*30=450 次
但是实际访问接口跟这个次数也对不上啊。
我理解 5 人并发,是指 5 个人同时发起请求的意思,不是说每秒 5 个请求。每秒处理多少个请求,还取决于服务器接口处理的速度。
举个例子,每个请求平均 0.5 秒可以返回,那么每秒可以处理 5*2=10 个请求,30 秒就是 300 个请求;反之如果每个请求平均 2 秒返回,则每秒可以处理 5*0.5=2.5 个请求,30 秒就是 75 个请求。
请求多少次,不止和并发用户数有关,还跟持续运行时间、每次请求的思考时间、接口响应时间有关。
比如:(为了更清晰的说明问题, 以理想状态考虑)
这些都是性能测试的基础,建议看看:
性能概念不清楚的,建议阅读:服务端性能测试 - 入门指南
性能测试工具学习的,建议阅读:服务端性能测试 - 工具篇 (Jmeter)
这个问题换个角度想,如果"想知道这个怎么计算请求接口多少次 起始人数是 5 最多人数 10,每次持续 30 秒
那是不是每秒请求 5 次持续 30 秒,然后每秒请求 10 次持续 30 秒。计算公司 5*30+10*30=450 次"这里的思路是正确的,那是不是压力测试只要设计好就能知道 TPS 了,根本不用测
所以答案很简单,那算法只是你期望的最理想值,而实际结果跟服务器的性能相关,那也正是测试的意义所在。
擦,没办法删评论吗
首先我没用过图里的工具,从字面上获取到的信息是测试执行了 11 分钟多点,并发用户最大为 178,而设定目标是 1000。
大概率是加压策略的问题,用户数是可以直接计算出来的,性能再差,不妨碍我们继续加压,只不过很多用户可能无法得到响应而已。