ubuntu jmeter如何设置线程组
小樊
42
2025-12-10 17:49:01
Ubuntu 中 JMeter 线程组设置指南
一 环境准备与启动
- 在 Ubuntu 上解压并配置好 Apache JMeter 5.x,将 $JMETER_HOME/bin 加入 PATH,命令行执行 jmeter -v 验证可用。
- 启动图形界面:在终端输入 jmeter;无界面压测使用 jmeter -n -t your.jmx …。
二 图形界面添加与核心参数
- 添加线程组:在左侧 Test Plan 上右键,选择 Add → Threads (Users) → Thread Group。
- 关键参数与作用:
- Number of Threads (users):并发虚拟用户数,每个线程模拟一个用户。
- Ramp-Up Period (seconds):在多少秒内均匀启动全部线程。例如 100 线程、10 秒,则平均每秒启动 10 个线程,用于避免瞬间峰值冲击。
- Loop Count:每个线程执行循环次数;勾选 Infinite 则持续执行,直到手动停止或满足调度器条件。
- Same user on each iteration:勾选后每个线程在每次循环中使用相同的用户上下文(如登录态)。
- Delay Thread creation until needed:延迟到需要时再创建线程,有助于降低启动瞬间的资源占用。
- 取样器错误后要执行的动作:如 Continue、Start Next Thread Loop、Stop Thread、Stop Test、Stop Test Now。
- 线程生命周期(部分版本在“线程组”底部,部分版本在“调度器”中):Duration (seconds)、Startup delay (seconds),用于按时间控制运行窗口。
三 调度器与执行时长控制
- 启用方式:在线程组勾选 调度器(Scheduler) 后,出现 持续时间 与 启动延迟 配置。
- 常用组合与效果:
- 固定时长压测:勾选 调度器,设置 持续时间(如 300 秒),循环次数 设为 Infinite,到时间自动停止。
- 固定次数压测:不启用 调度器 或取消勾选,设置 循环次数(如 100),按循环结束。
- 版本提示:在 JMeter 5.x 中,调度器相关项有时整合在“线程组”底部;若界面未见,请检查线程组底部的 Duration/Startup delay 区域。
四 命令行运行与结果查看
- 保存脚本为 your.jmx,在 Ubuntu 终端执行:
- 非 GUI 运行并生成报告:
- jmeter -n -t your.jmx -l result.txt -e -o report/
- 说明:
- -n:非 GUI 模式
- -t:指定 .jmx 脚本
- -l:保存原始结果到 result.txt
- -e -o report/:生成 HTML 报告到 report/ 目录
- 常用监听器:Summary Report、View Results Tree(GUI 调试阶段使用)。
五 设置示例与常见建议
- 示例一(逐步加压,持续 5 分钟):
- Number of Threads:200
- Ramp-Up Period:60(约每 0.3 秒启动 1 个线程)
- Loop Count:Infinite
- 勾选 调度器:Duration=300 秒
- 示例二(固定次数,便于复现):
- Number of Threads:100
- Ramp-Up Period:20
- Loop Count:50(总请求数约 5000)
- 实践建议:
- 合理设置 Ramp-Up,避免 0 秒瞬时并发导致失真或过载。
- 单机并发不宜过大,必要时采用 分布式压测 扩展压力。
- 使用 Setup Thread Group 做初始化(如登录/数据准备),tearDown Thread Group 做清理(如数据删除)。