做网站的图片需要多少钱,原创文章网站开发教程,门户网站建设工作制度建立情况,电影新网站如何做seo优化一般我们压测的时候#xff0c;需要了解衡量系统性能的一些参数指标#xff0c;比如。
1、性能指标简介
1.1 延迟
简单易懂。green:一般指响应时间
95线#xff1a;P95。平均100%的请求中95%已经响应的时间
99线#xff1a;P99。平均100%的请求中99%已经响应的时间
平…
一般我们压测的时候需要了解衡量系统性能的一些参数指标比如。
1、性能指标简介
1.1 延迟
简单易懂。green:一般指响应时间
95线P95。平均100%的请求中95%已经响应的时间
99线P99。平均100%的请求中99%已经响应的时间
平均响应时间所有请求的平均响应时间
最大响应时间所有请求中最大的响应时间
1.2 吞吐量
简单易懂。green:即每秒处理的请求数量
对于查询搜索类的系统使用每秒处理的请求数QPS来衡量吞吐能力。
一般对于交易类的系统使用每秒处理的事务数TPS来衡量吞吐能力。
TPS每秒处理的事务数比如每秒处理的订单数
QPS每秒处理的请求数
1.3 系统容量
也叫做设计容量可以理解为硬件配置(内存cpu什么的)成本约束
2、压测工具 wrk
wrk 是一款针对 Http 协议的基准测试开源工具它能够在单机多核 CPU 的条件下使用red:系统自带的高性能 I/O 机制如 epollkqueue 等通过多线程和事件模式对目标机器产生大量的负载。
wrk 目前仅支持单机压测后续也不太可能支持多机器对目标机压测。
因为它本身的定位并不是用来取代 JMeter, LoadRunner 等专业的测试工具wrk 提供的功能对后端开发人员来说应付日常接口性能验证还是比较友好的。
wrk 只能被安装在类 Unix 系统上所以我们需要一个 Linux 或者 MacOS 环境。Windows 10 安装需要开启自带的 Ubuntu 子系统。
3、使用 wrk
使用方法: wrk 选项 被测HTTP服务的URL
Options:
-c, --connections N 跟服务器建立并保持的TCP连接数量 -d, --duration T 压测时间 -t, --threads N 使用多少个线程进行压测 -s, --script S 指定Lua脚本路径 -H, --header H 为每一个HTTP请求添加HTTP头 --latency 在压测结束后打印延迟统计信息 --timeout T 超时时间 -v, --version 打印正在使用的wrk的详细版本信息代表数字参数支持国际单位 (1k, 1M, 1G)
代表时间参数支持时间单位 (2s, 2m, 2h)
3.1 命令简单的压测
简单进行一次压测用10个线程200个连接对百度进行30s的压测。
以下是对压测结果
wrk -t 10 -c 200 -d 30s --latency http://www.baidu.com# 30s内测试百度的结果如下Running 30s test http://www.baidu.comm/# 用12个线程 400个连接测试12 threads and 400 connectionsLatency Distribution# 响应时间-延迟分布明细# 有50%的请求执行时间是在64.42ms内完成50% 64.42ms# 30秒内功处理了 149798 个请求读取了 241.85MB 的数据149798 requests in 30.09s, 241.85MB read# QPS 4977.65, 即平均每秒处理请求数为4977.65 可以参考吞吐量。Requests/sec: 4977.65# 平均每秒读取 8.04M 的数据Transfer/sec: 8.04MB3.2 编写压测脚本
首先需要准备一个 lua 文件比如名为 test-postapi.lua 写入如下内容。
### 请求方式wrk.method POST### 设置 请求类型wrk.headers[Content-Type] application/json### POST 请求参数wrk.body {username: 13999999999,username: 13999999999}这个文件内容自己写写好接口内容后保存。
3.3 执行脚本
以下是模拟6个线程600个连接在60s内间隔6s 执行 test-postapi.lua 脚本的请求。
# 进入wrk执行文件目录# --script 参数的值为脚本名# --latency 参数的值为接口地址./wrk -t6 -c600 -d60s --scripttest-postapi.lua --latency http://api.xxxdev.com/enterprise/user/login最后感谢每一个认真阅读我文章的人礼尚往来总是要有的虽然不是什么很值钱的东西如果你用得到的话可以直接拿走 这些资料对于【软件测试】的朋友来说应该是最全面最完整的备战仓库这个仓库也陪伴上万个测试工程师们走过最艰难的路程希望也能帮助到你