五、Linux环境下的JMeter接口压测

1. Linux上部署Java应用

(1) SpringBoot 接口打包并本地启动

用jar包方式在控制台进行启动,启动之后就可以浏览器访问啦

1) 打包

mvn packag //Mac安装和配置Maven
请添加图片描述

2) 启动打好的jar包

java -jar target/gs-spring-boot-0.1.0.jar
请添加图片描述

3) 浏览器访问

请添加图片描述

(2) 安装Linux虚拟机

1) 下载并安装VMware Fusion

2) 下载CentOs镜像

  1. 访问Linux官网下载CentOs地址,点击“mirrors”
    请添加图片描述
  2. 选择镜像类型 请添加图片描述
  3. 选择阿里云版本
    请添加图片描述
    4.下载镜像请添加图片描述

3) VMware中安装Linux

  1. 点击新建虚拟机 -> 选择“Install from disk or image” -> Continue
    请添加图片描述
  2. 拖拽已下载的iso进安装向导面板 -> Continue请添加图片描述请添加图片描述
  3. 选择系统版本 -> Continue
    请添加图片描述
  4. Continue -> Finish
    请添加图片描述
    请添加图片描述5. 在Linux配置页面需要打开网络连接(如下图)和输入root账号的密码;其他必要配置使用默认的即可,即点开后直接点击“Done”
    请添加图片描述

(3) 远程安装JDK

1) 下载

请添加图片描述

2) 上传

  1. ifconfig命令获取Linux的IP 请添加图片描述
  2. FileZilla连接Linux (FileZilla官网下载)
    请添加图片描述请添加图片描述
  3. 将jdk安装包拖拽进合适的路径请添加图片描述

3) 安装

  1. 连接远程终端
    ssh root@ip
    请添加图片描述
  2. 解压jdk的tar包
    tar -xvf jdk~.tar //tar命令详解
    请添加图片描述请添加图片描述
  3. 配置环境变量
    (1) vim /etc/profile
    (2) 加入以下配置:
    export JAVA_HOME=/usr/local/softwares/jdk-12.0.2 //根据实际的java目录填写
    export PATH=$PATH:$JAVA_HOME/bin
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
    export JAVA_HOME PATH CLASSPATH
    
  4. 让环境变量立刻生效
    source /etc/profile
  5. 验证安装完成
    java -version
    请添加图片描述

(4) 远程部署jar包

1) 上传jar包

请添加图片描述

2) 启动jar包

请添加图片描述

守护进程

nohup java -jar ~.jar &
守护进程启动的jar包,即使退出终端,该jar包将仍为启动状态
请添加图片描述

3) 关闭防火墙

请添加图片描述
请添加图片描述

防火墙相关命令
1. 查看防火状态
    systemctl status firewalld
    service iptables status

2. 暂时关闭防火墙
   //若只执行一个还是不能访问接口,可将这两条指令都执行
   //背景:我执行了“systemctl stop firewalld”以关闭防火墙,可以被ping通,但通过浏览器和curl访问其接口时会被拒绝,又执行了“service iptables stop”就可以被访问了
    systemctl stop firewalld
    service iptables stop

4. 永久关闭防火墙
    systemctl disable firewalld
    chkconfig iptables off

5. 重启防火墙
    systemctl enable firewalld
    service iptables restart  

6. 永久关闭后重启(未测试)
    chkconfig iptables on

4) 远程访问

请添加图片描述

curl命令

curl <ip:port/api>

  • 我在本地安装的两台Linux虚拟机在同一个局域网内,可以ping通,也可以通过curl命令访问在对方机器上启动的jar包

请添加图片描述

2. Linux上使用JMeter压测

用于压测的多台Linux在需要在同个局域网内,且在相同的无空格或中文的路径安装同个版本的jdk和jmeter

(1) 安装JMeter

1) 下载

wget https://dlcdn.apache.org//jmeter/binaries/apache-jmeter-<版本号>.tgz
请添加图片描述

2) 解压

tar -zxf apache-jmeter-<版本号>.tgz
请添加图片描述

启动JMeter GUI

请添加图片描述

(2) 非GUI压测

在Linux服务器上以非GUI界面去执行JMX压测脚本

1) 参数

全部参数可查阅JMeter命令行模式官方使用手册,以下为常用参数:

  • -h 帮助
  • -n 非GUI模式
  • -t 指定要运行的 JMeter 测试脚本文件
  • -l 记录结果的文件 每次运行之前,(要确保之前没有运行过,即xxx.jtl不存在,不然报错)
  • -r 启动jmeter.properties文件中指定的所有远程服务器
  • -e 在脚本运行结束后生成html报告
  • -o 用于存放html报告的目录(目录要为空,不然报错)

2) 命令

jmeter -n -t <脚本文件名>.jmx -l <本不存在的结果文件名>.jtl -e -o <存放html报告的空目录>

  • 若当前已在jmeter的bin目录下,jmeter前要加“./”,即“./jmeter -n -t ……”

请添加图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux环境下搭建JMeter的分布式压测环境时,可能会遇到一些问题。其中一个常见问题是启动./jmeter-server时出现"Cannot start. localhost.localdomain is a loopback address"的错误信息。解决这个问题的方法是编辑jmeter-server文件,设置固定的代理服务器主机IP。具体步骤如下: 1. 打开Linux中的jmeter-server文件: ``` cd /opt/apache-jmeter-4.0/bin vi jmeter-server ``` 2. 在jmeter-server文件中找到RMI_HOST_DEF这一行,并取消注释: ``` # One way to fix this is to define RMI_HOST_DEF below RMI_HOST_DEF=-Djava.rmi.server.hostname=192.168.248.130(当前机器ip) ``` 将当前Linux主机查询到的IP地址填入RMI_HOST_DEF的值中。 另外,还需要确保CLASSPATH环境变量正确设置。可以使用以下命令设置CLASSPATH: ``` export CLASSPATH=${JMETER}/lib/ext/ApacheJMeter_core.jar:${JMETER}/lib/jorphan.jar:$JMETER/lib/logkit-2.0.jar:${CLASSPATH} ``` 此外,还需要在jmeter.properties文件中进行一些配置。可以通过编辑jmeter.properties文件,将以下配置项设置为true: ``` jmeter.save.saveservice.output_format=xml jmeter.save.saveservice.response_data=true jmeter.save.saveservice.samplerData=true jmeter.save.saveservice.requestHeaders=true jmeter.save.saveservice.url=true jmeter.save.saveservice.responseHeaders=true ``` 通过以上步骤,你就可以在Linux环境下成功搭建JMeter的分布式压测环境了。 #### 引用[.reference_title] - *1* [Linux环境下搭建jmeter分布式压测](https://blog.csdn.net/shanezhijian/article/details/124668524)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [Jmeter分布式压测环境搭建](https://blog.csdn.net/weixin_51084345/article/details/127261500)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值