01
吞吐压测概述
什么是吞吐压测、为什么需要、核心指标 (QPS/TPS/并发数/响应时间)
基础指标
02
压测工具选型
JMeter · wrk · ab · Locust · Gatling 对比与选型建议
工具对比
03
环境准备
网络规划、硬件评估、OS参数调优 (ulimit, tcp_tw_reuse…)
运维调优
04
JMeter入门
安装启动 · 线程组 · HTTP Sampler · 监听器 (聚合报告/图形结果)
JMeter入门
05
编写第一个压测脚本
手动编写HTTP GET · CSV参数化 · 响应断言
脚本参数化
06
压测场景设计
基准测试 · 负载测试 · 压力测试 · 稳定性测试
场景设计
07
并发模型与线程组
setUp/tearDown · 阶梯线程组 · 并发线程组
线程组进阶
08
参数化与数据驱动
CSV参数化 · 函数助手 · JDBC参数化
数据驱动
09
关联与正则提取
正则提取器 · JSON提取器 · XPath · 边界提取器
关联提取
10
逻辑控制器
If · While · ForEach · Switch · 循环 · 交替控制器
控制逻辑
11
定时器
固定定时器 · 高斯随机 · 同步定时器 · 常数吞吐量定时器
定时节流
12
前置/后置处理器
用户参数 · JDBC前置 · BeanShell/JSR223后置
处理器脚本
13
断言详解
响应断言 · JSON断言 · 大小断言 · 持续时间 · BeanShell断言
断言验证
14
监听器与报告
聚合报告 · 图形结果 · Backend Listener (InfluxDB+Grafana)
报告可视化
15
分布式压测
JMeter Master-Slave · 配置启动 · 文件同步/网络延迟
分布式进阶
16
wrk入门
安装 · 基本用法 (-t -c -d) · Lua脚本编写
wrkLua
17
ab入门
安装 · 用法 (-n -c -k) · 结果解读 (RPS/Time per request)
abApache
18
Locust入门
安装 · User类 (@task/@between) · Web UI/无头模式
LocustPython
19
Gatling入门
安装 · Scala脚本 (scenario/exec/pause) · Simulation类
GatlingScala
20
压测结果分析
吞吐量计算 · P50/P90/P99 · 错误率 · 瓶颈定位
分析调优
21
服务器监控
CPU/内存/磁盘/网络 (top, vmstat, iostat, sar, nmon)
监控Linux
22
数据库压测
JMeter压MySQL (JDBC配置/请求) · 慢查询监控
数据库MySQL
23
缓存压测
压测Redis (Jedis) · Memcached · 缓存命中率影响
缓存Redis
24
消息队列压测
Kafka (Producer/Consumer) · RabbitMQ (AMQP)
MQKafka
25
WebSocket压测
JMeter WebSocket Sampler (Open/Close, Request-Response, Ping/Pong)
WebSocket实时
26
gRPC压测
JMeter gRPC插件 · protobuf加载 · Unary/Server Streaming
gRPCRPC
27
脚本调试与优化
Debug Sampler · View Results Tree · 日志级别 · 参数优化
调试优化
28
压测安全与规范
压测前申请 · 监控 · 清理 · 避免影响生产
规范安全
29
压测报告编写
报告结构 (背景/目标/结果/结论) · 图表制作 (折线/柱状/热力)
报告图表
30
综合实战
从零开始完整吞吐压测:需求→脚本→场景→执行→监控→分析→报告
实战全流程