下面以 CentOS 服务器 + JMeter(非 GUI 模式) 为例,说明如何对接口进行压测。
JMeter 依赖 Java:
java -version
如果没有安装:
yum install -y java-1.8.0-openjdk
cd /opt
wget https://archive.apache.org/dist/jmeter/binaries/apache-jmeter-5.6.3.tgz
tar -zxvf apache-jmeter-5.6.3.tgz
mv apache-jmeter-5.6.3 jmeter
配置环境变量(可选):
echo 'export JMETER_HOME=/opt/jmeter' >> ~/.bashrc
echo 'export PATH=$JMETER_HOME/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
验证:
jmeter -v
test.jmxscp test.jmx user@centos:/opt/jmeter/
jmeter -n \
-t /opt/jmeter/test.jmx \
-l /opt/jmeter/result.jtl \
-e -o /opt/jmeter/report
参数说明:
-n:非 GUI 模式-t:测试脚本-l:结果文件-e -o:生成 HTML 报告POST http://api.example.com/login
Content-Type: application/json
{
"username": "test",
"password": "123456"
}
含义:
100 个用户,10 秒内启动,每人请求 100 次
cat result.jtl | head
将 report 目录下载到本地浏览器打开:
scp -r user@centos:/opt/jmeter/report ./
重点看:
编辑:
vi /opt/jmeter/bin/jmeter
修改:
HEAP="-Xms1g -Xmx4g"
GUI 中:
如果单台不够:
# 控制机
jmeter -n -t test.jmx -R slave1,slave2
需要:
✅ CentOS 上 不要使用 GUI 模式压测
✅ 接口有鉴权要先处理 token
✅ 压测前确认服务器资源(CPU / 内存 / 带宽)
✅ 避免压到自己生产环境
如果你愿意,可以告诉我:
我可以帮你 直接写一个可用的 jmx 示例。