性能-Jmeter
性能-Jmeter
cmyang官网地址:http://jmeter.apache.org/
下载地址:http://jmeter.apache.org/download_jmeter.cgi
下载慢可以更换其他镜像地址下载
启动方式:下载后,启动bin目录下的jmeter.bat (windows)
修改jmeter为中文
临时:Options -> Choose Language -> Chinese(Simplified)
永久:在bin目录下找到配置文件jmeter.properties,
搜索language,将language=en,改为language=zh_CN
操作:
创建压测计划(Hello World)
(1)测试计划(右键)-> 添加 -> 线程(用户) -> setUp线程组
(2)线程数和Ramp-up时间 都填写 10
(3)线程组右键 -> 添加 -> 取样器 -> HTTP请求 -> 填写服务器ip,端口号,路径
(4)如果需要添加头信息,在配置元件中->HTTP信息头管理器
(5)线程组右键 -> 添加 -> 监听器 -> 查看结果树
(6)点击头部绿色启动箭头开始压测,再点击否,开始执行
概念
线程组:一组线程并发执行,每个线程就是一个请求
线程数:线程组内的线程个数,模拟并发数
准备时长(Ramp-Up Period(in seconds)):全部线程启动的时长,比如100个线程,20秒,则表示20秒内 100个线程都要启动完成,每秒启动5个线程
循环次数:每个线程发送的次数,假如值为5,100个线程,则会发送500次请求,可以勾选永远循环
特殊线程组
- setUP:最先执行,前置工作
- 线程组:中级执行,常规处理
- tearDown:最后执行,收尾工作
聚合报告(Aggregate Report)
- lable: sampler的名称
- Samples(样本): 一共发出去多少请求,例如10个用户,循环10次,则是 100
- Average(平均值): 平均响应时间
- Median(中位数): 50% 用户的响应时间
- 90% Line : 90% 用户的响应不会超过该时间 (90% of the samples took no more than this time. The remaining samples at least as long as this)
- 95% Line : 95% 用户的响应不会超过该时间
- 99% Line : 99% 用户的响应不会超过该时间
- min : 最小响应时间
- max : 最大响应时间
- Error%:错误的请求的数量/请求的总数
- Throughput: 吞吐量——默认情况下表示每秒完成的请求数(Request per Second) 可类比为qps
- KB/Sec: 每秒接收数据量
性能测试的关键点
- TPS
- Transactions Per Second 每秒事务数, 可以是一个接口、多个接口、一个业务流程
- 包括增删改操作
- QPS
- Queries Per Second, 每秒查询数, 指一台服务器每秒能够响应的查询次数
- QPS 只是一个简单查询的统计,不能描述增删改等操作
- 如果单压测查询接口 TPS=QPS
- RT
- 响应时间