Nodejs接口压测工具

本文介绍了使用autocannon对Node服务进行压测的方法。先通过npm安装autocannon包,启动项目后,使用autocannon命令工具进行压测,需指定链接数量、持续时间和接口地址。压测完成会生成请求延迟和请求量两个表,并对表中数据含义进行了解释。
  1. 安装autocannon包

npm i autocannon --save

  1. 启动项目
  2. 使用 autocannon 命令工具进行压测(压测前Node服务必须开启)

autocannon -c 100 -d 50 http://localhost:8978/
-c 是链接数量 -d持续压测时间 后面跟的是接口地址(如果测试需要参数,提前在接口写好默认参数)

压测完成会有两个表: 一个表表示请求延迟,另一个表表示请求量。

┌─────────┬──────┬──────┬───────┬──────┬─────────┬─────────┬──────────┐
│ Stat │ 2.5% │ 50% │ 97.5% │ 99% │ Avg │ Stdev │ Max │
├─────────┼──────┼──────┼───────┼──────┼─────────┼─────────┼──────────┤
│ Latency │ 0 ms │ 0 ms │ 0 ms │ 1 ms │ 0.02 ms │ 0.16 ms │ 16.45 ms │
└─────────┴──────┴──────┴───────┴──────┴─────────┴─────────┴──────────┘
延迟表列出了2.5% 的请求时间,快速离群值; 50% ,中位数; 97.5% ,慢速离群值; 99% ,最慢的离群值。在这里,更低意味着更快。

┌───────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┐
│ Stat │ 1% │ 2.5% │ 50% │ 97.5% │ Avg │ Stdev │ Min │
├───────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤
│ Req/Sec │ 20623 │ 20623 │ 25583 │ 26271 │ 25131.2 │ 1540.94 │ 20615 │
├───────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤
│ Bytes/Sec │ 2.29 MB │ 2.29 MB │ 2.84 MB │ 2.92 MB │ 2.79 MB │ 171 kB │ 2.29 MB │
└───────────┴─────────┴─────────┴─────────┴─────────┴─────────┴─────────┴─────────┘

请求卷表列出了发送的请求量和下载的字节量。这些值每秒采样一次。更高的值意味着处理更多的请求。在上面的例子中,在最坏的情况下,4.78 MB 的下载时间为1秒(最慢的1%)。由于我们只运行了5秒钟,只有5个样本ー最小值和1% 和2.5% 的百分位数实际上都是同一个样本。随着时间的延长,这些数字的差异会更大。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值