FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

更新 实战项目 · pascalcpp/PassJava-Learning@900fb1f · GitHub

Commit 900fb1f

Browse files
committed
更新 实战项目
1 parent a4e3173 commit 900fb1f

2 files changed

Lines changed: 93 additions & 1445 deletions

File tree

‎docs/89.架构图解/02.20张图手摸手教你性能压测.md‎

Lines changed: 93 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@
44

55
### 1.1、 大白话解释
66

7-
- 压力测试是什么:就是考察当前`软件``硬件`环境下,系统所能承受的`最大负荷`,并帮助找出系统的`瓶颈`所在。
7+
- 性能压测是什么:就是考察当前`软件``硬件`环境下,系统所能承受的`最大负荷`,并帮助找出系统的`瓶颈`所在。
88

9-
- 压力测试目的:为了系统在线上的`处理能力``稳定性`维持在一个`标准范围`内,做到知己知彼,百战不殆。还可以发现内存泄漏、并发与同步的问题。
9+
- 性能压测的目的:为了系统在线上的`处理能力``稳定性`维持在一个`标准范围`内,做到知己知彼,百战不殆。还可以发现内存泄漏、并发与同步的问题。
1010

1111
### 1.2、性能指标
1212

@@ -18,5 +18,95 @@
1818
- 90%响应时间:将所有用户的响应时间进行升序排序,取 90 % 的位置。
1919
- 性能测试关注点:
2020
- 吞吐量:每秒钟系统能处理的请求数、任务数。
21-
- 响应时间:
21+
- 响应时间:服务处理一个请求或一个任务的耗时。
22+
- 错误率:一批请求中结果出过错的请求所占比例。
23+
24+
## 二、Jmeter 压测工具
25+
26+
### 1、Jmeter 工具
27+
28+
- 下载和安装 Jmeter 工具
29+
30+
``` bash
31+
下载地址:https://jmeter.apache.org/download_jmeter.cgi
32+
我下载的版本是 apache-jmeter-5.3
33+
```
34+
35+
![mark](http://cdn.jayh.club/blog/20201124/M2cuMwEmFqDI.png?imageslim)
36+
37+
- 运行 JMeter 程序
38+
39+
打开批处理文件:\apache-jmeter-5.3\bin\jmeter.bat
40+
41+
![mark](http://cdn.jayh.club/blog/20201124/ADvlxYP2NF8m.png?imageslim)
42+
43+
- 添加线程组
44+
45+
![添加线程组](http://cdn.jayh.club/blog/20201124/rMltVHwSE0TE.png?imageslim)
46+
47+
- 1s 内启动 200 个线程,循环次数 100 次。2w 个请求。
48+
49+
![mark](http://cdn.jayh.club/blog/20201124/vCqNsjpEjdog.png?imageslim)
50+
51+
- 测试 HTTP 请求
52+
53+
![mark](http://cdn.jayh.club/blog/20201124/t1bNbcG9GXIB.png?imageslim)
54+
55+
配置要测试的协议、服务器地址、端口号
56+
57+
协议:http
58+
59+
服务器名称或 IP: www.baidu.com (只是为了演示)
60+
61+
端口号:80
62+
63+
![mark](http://cdn.jayh.club/blog/20201124/WCeoztt3PIRW.png?imageslim)
64+
65+
- 添加察看结果树、汇总报告和聚合报告
66+
67+
![mark](http://cdn.jayh.club/blog/20201124/aOIPA0EO6bTR.png?imageslim)
68+
69+
- 开始压力测试
70+
71+
点击播放按钮就开始启动了。注意启动之前需要先设置线程组的参数配置和 HTTP 请求的配置。
72+
73+
![mark](http://cdn.jayh.club/blog/20201124/Wd3aIXi717l4.png?imageslim)
74+
75+
- 查看每个请求结果
76+
77+
![mark](http://cdn.jayh.club/blog/20201124/2f7ACiWojB0a.png?imageslim)
78+
79+
- 查看汇总报告
80+
81+
主要关心平均值和吞吐量。
82+
83+
200 个线程,每个线程调用 100 次,总共 2 w 次,可以看到下图中表格中的样本列也是 2 w,请求所耗费的时间是 151 ms,吞吐量是 880 个请求每秒。
84+
85+
![mark](http://cdn.jayh.club/blog/20201124/LW43JAqFGiuP.png?imageslim)
86+
87+
- 查看聚合报告
88+
89+
主要看中位数和90%百分位,如下图所示,
90+
91+
**中位数**是 59 ms,说明大部分请求的响应时间是 59 ms。
92+
93+
**90 % 的请求** 都是在 271 ms 以内响应完成的。
94+
95+
**异常 0.41%** 说明 2 w 个请求中有 82 个请求异常(20000 * 0.0041 = 82 )。
96+
97+
**吞吐量 880.2/sec** 说明百度这个网站每秒能处理 880 个请求。
98+
99+
![mark](http://cdn.jayh.club/blog/20201124/uY4OgJYaSdkx.png?imageslim)
100+
101+
- 查看汇总图
102+
103+
查看汇总图时,需要先勾选想要查看的信息
104+
105+
![mark](http://cdn.jayh.club/blog/20201124/dyo88DawfTOI.png?imageslim)
106+
107+
然后查看图形汇总:
108+
109+
![mark](http://cdn.jayh.club/blog/20201124/HCEBjNKrzjDc.png?imageslim)
110+
111+
可以看到勾选的几列在图表中是用不同颜色表示的,比如绿色的柱状条就是 90 % 百分位。
22112

0 commit comments

Comments
 (0)

Back | FazBrowse Home | New Git URL