接口压测实践-压力测试常见参数解释说明

使用场景

对指定接口进行性能测试时,一些常见参数解释说明。

一键并发

可以通过下载最新版的 Apipost 客户端实现单接口的高性能一键并发压测,如下图所示

注意:请勿设置太大的并发量或者循环次数,这有可能导致直接将被压服务压崩溃或者将路由器压崩溃。参考参考下方 【实践】部分建议。

底层原理

为实现高性能的并发需求,使用自研的压测引擎,可以实现一万以上并发。

项目已经开源,github地址:

https://github.com/Apipost-Team/runnerGo

压测结果计算方式

总请求数

总共发送送请求总数

并发数*轮次

执行时间

压测任务执行时间

任务结束时间-任务开始时间

成功请求数

http请求code为200的请求数量

失败请求数

http请求code非200或者连接异常请求数量

错误率

压测出错比例

失败次数/总请求数 * 1000

总接收数据

总结接收到数据总字节数

累加每次返回结果的字节数量

每秒请求数

每秒平均请求数量

请求总次数/请求总时间

每秒成功请求数

每秒平均成功请求数量

成功请求总次数/成功请求总时间

每秒接收字节数

每秒接收平均字节数

总接收字节数/总请求时间

最大响应时间

最大请求执行时间

所有请求中执行最长的时间

最小响应时间

最小请求执行时间

所有请求中执行最小的时间

平均响应时间

平均响应时间

请求总时间/请求总次数

10%

前10%请求完成时间

所有请求花费时间正序排序,取10%位置的执行时间

25%

前25%请求完成时间

所有请求花费时间正序排序,取20%位置的执行时间

50%

前50%请求完成时间

所有请求花费时间正序排序,取50%位置的执行时间

75%

前75%请求完成时间

所有请求花费时间正序排序,取75%位置的执行时间

90%

前90%请求完成时间

所有请求花费时间正序排序,取90%位置的执行时间

95%

前95%请求完成时间

所有请求花费时间正序排序,取95%位置的执行时间

实践

并发结果很容易外界因素影响,压测时需要尽量减少外界因素影响。

影响压测结果外界因素有本机句柄数限制,dns解析速度,网络质量,服务端连接数限制等等。

例如使用1w并发, 很容易出现超过本机最大句柄数限制(一般最大限制1024), 超过句柄数限制的请求会因为句柄数受限导致连接失败。

因此选择合适并发数对测试接口性能非常重要,并非并发数越大越好。

并发数建议先在10, 100, 500, 1000左右分别测试下,如果失败率小于1%,再考虑逐步增加并发数量。只有增加并发每秒请求数量能持续增加才是健康使用方式。

全部评论

相关推荐

hso_:哈哈哈哈哈哈我没offer一样在同一道题开喷了
投递深圳同为数码等公司10个岗位
点赞 评论 收藏
分享
点赞 1 评论
分享
牛客网
牛客企业服务