摘要

在小公司打工的好处,除了加班没钱、调休不给用,还有一点就是能做一个啥都不精通、但又都会点的半吊子。

天天被忽悠,美其名曰全干工程师,其实只是为了少发份钱罢了,打工人心里苦啊,打工人什么时候才能站起来呢?

牛马而已,故简单记录一次压测示例。

正文

需求

  • 生成压测样本,根据样本作为请求参数,进行压测。

环境

  1. 压测的示例项目:内置程序生成压测样本csv
  2. Jmeter环境

一、简易压测流程

1.) 启动jmeter

进入jmeter解压后的根目录,进入bin下,双击jmeter.bat即可启动

2.) 创建ThreadGroup

在TestPlan下面,右键即可找到ThreadGroup

image-20230916111237237.png

配置1000并发,连续压测300秒。

image-20230916111440939.png

3.) 创建CSV Data Set Config

在ThreadGroup下面,右键添加CSV Data Set Config

image-20230916111841756.png

配置CSV Data Set Config,如图,根据你的CSV数据格式配置即可。

image-20230916112209080.png

4.) 创建HttpRequest

在ThreadGroup下面右键添加HttpRequest

image-20230916112319919.png

根据压测目标地址,进行HttpRequest的配置,如图

image-20230916112546853.png

5.) 汇总压测结果

根据实际需要,添加Listener即可。

image-20230916113019052.png

6.) 清空旧数据

每次压测前,都需要将旧数据进行清理。否则汇总结果,就会累加。

image-20230916113325848.png

7.) 开始压测

image-20230916113434410.png

8.) 分析数据观测瓶颈

只要服务器 或者 客户端,出现了处理器、内存、磁盘、网络,达到了80%以上,就说明该加机器了。

image-20230916113952381.png

image-20230916114042715.png

二、监控服务器信息

参看文档

1.) 安装插件管理器

jmeter的本体是没有插件管理器的,需要手动安装。

下载plugins-manager.jar,把它放到目录 lib/ext 下,然后重启jmeter。

2.) 安装PerfMon

按照如下步骤Options->PluginsManager->AvailablePlugins->PerfMon->ApplyChangesAndRestartJmeter,安装PerfMon插件。

image-20250124203642005.png

3.) 服务端安装PerfMonAgent

下载PerfMonAgent,放到服务器上,直接运行sh startAgent.sh启动。

sh
1
sh startAgent.sh --tcp-port 4444 --udp-port 4444

4.) 添加PerfMon监听器

按照如下步骤ThreadGroup->Add->Listener->jp@gc,添加PerfMon监听器。然后AddRow,按照需求选择CPU/Memory即可。

image-20250124211342774.png

三、命令行压测

1.) 在含有GUI机器上创建Jmeter压测脚本test.jmx

2.) 开始压测

sh
1
2
# -n表示命令行,-l log.jtl表示输出请求日志到log.jtl,-e -o report表示生成html报告,并输出到report目录
jmeter -n -t test.jmx -l log.jtl -e -o report