【Linux】一站式教会:Ubuntu(无UI界面)使用apache-jmeter进行压测

在这里插入图片描述

🏡浩泽学编程:个人主页

 🔥 推荐专栏:《深入浅出SpringBoot》《java对AI的调用开发》
              《RabbitMQ》《Spring》《SpringMVC》

🛸学无止境,不骄不躁,知行合一

文章目录

  • 前言
  • 一、Java JDK19安装
  • 二、apache-jmeter安装
  • 三、压测
  • 总结


前言

近期做个SpringBoot项目,打包在电脑的Ubuntu系统上运行,并在Ubuntu内使用Jmeter进行压测,如果大家同样有压测需求可以参考,避坑少走弯路;主要讲诉JDK安装(版本JDK19)、Jmeter(版本5.3)安装使用。


一、Java JDK19安装

无需在意版本,其他版本亦是相同操作,我采用JDK19是因为我打包的SpringBoot项目用的是JDK19,大家在打包运行项目时,如果遇到报错也要注意是不是JDK版本不一致造成的,这里与本篇文章无关,不再赘诉。

前往JDK官网下载需要的JDK版本(注意要linux版本的)
在这里插入图片描述
我的Ubuntu是64位的就下载的是linux版的64位JDK
在这里插入图片描述

下载完毕直接上传到Ubuntu系统上,上传到哪个文件夹无所谓,记住就行。

在这里插入图片描述

可能有些朋友好奇,你这什么软件,怎么能这样操作虚拟机,我使用的是FinallShell软件,给大家看一下界面。随便说一下它是中文的,且支持直接复制粘贴命令,能直接上传下载文件。

在这里插入图片描述
跟JDK压缩包在哪个文件夹下,就在哪个文件夹下执行解压命令:

sudo tar -zxvf jdk-19.0.2-linux-x64.tar.gz

解压完成之后,在/usr/local/目录下创建java文件夹:

sudo mkdir /usr/local/java

将解压出来的文件jdk-19.0.2移动到/usr/local/java目录下:

sudo mv /home/wang/jdk19.0.2/ /usr/local/java/

切换到root用户,打开.bashrc文件配置环境变量,,添加以下代码,保存

切换为root
su打开.bashrc文件
vim .bashrc按i进入编辑模式
i文件最后添加代码
export JAVA_HOME=/usr/local/java/jdk-19.0.2
export JRE_HOME=/usr/local/java/jdk-19.0.2/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin按esc键退出编辑模式,再按输入:
最后输入wq,回车后即为保存退出
:wq

在这里插入图片描述
输入以下命令并回车使其生效:

source .bashrc

测试JDK是否安装成功:

java -version

在这里插入图片描述
安装完毕。

二、apache-jmeter安装

去官网下载apache-jmeter压缩包,上传到Ubuntu系统,如果是.gz压缩包:

压缩包在哪个文件夹下,就在哪个文件夹执行
tar -zxvf 压缩包文件名

压缩包如果是.zip:
在这里插入图片描述

先执行
sudo apt install zip unzip再执行(压缩包在哪个文件夹下,就在哪个文件夹执行)
unzip 压缩包文件名

将加压后文件移到/usr/local文件夹下:

sudo mv /home/wang/apache-jmeter-5.3 /usr/local/

配置环境变量:修改/etc/profile

vim /etc/profile

末尾添加:

export JAVA_HOME=/usr/local/java/jdk-19.0.2
export JRE_HOME=${JAVA_HOME}/jre
export JMETER_HOME=/usr/local/apache-jmeter-5.3
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:${JMETER_HOME}/lib/ext/ApacheJMeter_core.jar:${JMETER_HOME}/lib/jorphan.jar:${JMETER_HOME}/lib/logkit-2.0.jar:$CLASSPATH
export PATH=${JAVA_HOME}/bin:${JMETER_HOME}/bin:$PATH

执行source命令,使修改生效

source /etc/profile

测试Jmeter是否安装成功 :

jmeter --version

在这里插入图片描述

三、压测

没有UI界面如何快速压测呢,这里我是再windows电脑上将配置好的压测保存为first.jmx文件,然后上传到Ubuntu系统上,然后将项目启动后执行。

这里补充一下我启动SpringBoot项目的命令:

java -jar 项目打包文件

压测命令:

 jmeter -n -t /usr/local/apache-jmeter-5.3/bin/first.jmx -l result.jtl
  • -n是指在linux系统上执行压测
  • -t后跟的压测文件路径
  • -l后跟的是保存的压测后的日志文件

成功压测:
在这里插入图片描述
在这里插入图片描述
生成的文件用windows上的jmeter打开就可看到。

要注意这个文件只能在聚合报告打开:
在这里插入图片描述
在这里插入图片描述
然后就可以看到,这里三千次是因我执行了三次压测,每次一千次。
在这里插入图片描述

总结

以上就是Ubuntu(无UI界面)使用apache-jmeter进行压测的全部讲解。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/485620.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【深度学习目标检测】十八、基于深度学习的人脸检测系统-含GUI和源码(python,yolov8)

人脸检测是计算机视觉中的一个重要方向,也是一个和人们生活息息相关的研究方向,因为人脸是人最重要的外貌特征。人脸检测技术的重要性主要体现在以下几个方面: 人脸识别与安全:人脸检测是人脸识别系统的一个关键部分,是…

【了解机器学习的定义与发展历程】

曾梦想执剑走天涯,我是程序猿【AK】 目录 简述概要知识图谱 简述概要 了解机器学习的定义与发展历程 知识图谱 机器学习(Machine Learning,ML)是一门跨学科的学科,它使用计算机模拟或实现人类学习行为,通…

我们在SqlSugar开发框架中,用到的一些设计模式

我们在《SqlSugar开发框架》中,有时候都会根据一些需要引入一些设计模式,主要的目的是为了解决问题提供便利和代码重用等目的。而不是为用而用,我们的目的是解决问题,并在一定的场景下以水到渠成的方式处理。不过引入任何的设计模…

隐藏饿了么el-select组件的el-select-dropdown部分,只使用el-select的显示框

隐藏饿了么el-select组件的el-select-dropdown部分,只使用el-select的显示框 问题: 由于el-select组件的el-select-dropdown部分是自动插入在最外层Body上的,所以在当前组件的scoped中让el-select-dropdown组件display:none不会生效所以需要: :popper-…

使用ffmpeg实现视频片段截取并保持清晰度

1 原始视频信息 通过ffmpeg -i命令查看视频基本信息 ffmpeg -i input.mp4 ffmpeg version 6.1-essentials_build-www.gyan.dev Copyright (c) 2000-2023 the FFmpeg developersbuilt with gcc 12.2.0 (Rev10, Built by MSYS2 project)configuration: --enable-gpl --enable-ve…

【学习笔记】数据结构与算法03:栈与队列

知识出处:Hello算法:https://www.hello-algo.com/. 文章目录 2.2 栈和队列2.2.1 「栈 stack」2.2.1.1 栈的常用操作2.2.1.2 栈的典型应用 2.2.2「队列 queue」2.2.2.1 队列的常用操作2.2.2.2 队列的典型应用 2.2.3 双向队列 「double-ended queue」2.2.3…

数据安全治理实践路线(上)

基于以上数据安全治理实践理念,可以按照自顶向下和自底向上相结合的思路推进实践过程。一方面,组织自顶向下,以数据安全战略规划为指导,以规划、建设、运营、优化为主线,围绕构建数据安全治理体系这一核心,从组织架构、制度流程、…

数据结构与算法——排序算法

目录 文章目录 前言 一.排序的基本概念 1.什么是就地排序 2.什么是内部排序和外部排序 3.什么是稳定排序 4.判定一个排序算法的是稳定的 二.插入排序算法 1.直接插入排序 1.1基本思想 1.2复杂度 1.3稳定性 1.4代码演示 2.折半插入排序 2.1基本思想 2.2性能 3.…

ubuntu20.04中配置Pyrep和CoppeliaSim

ubuntu20.04中配置Pyrep和CoppeliaSim 在Ubuntu20.04中配置 Pyrep ,实现应用Python语言的机器人在 Vrep(CoppeliaSim)中的虚拟仿真 一、安装CoppeliaSim 4.1 1.1 下载适配Ubuntu20.04的CoppeliaSim 4.1软件 下载链接:https://…

《剑指Offer》笔记题解思路技巧优化_Part_6

《剑指Offer》笔记&题解&思路&技巧&优化_Part_6 😍😍😍 相知🙌🙌🙌 相识😢😢😢 开始刷题🟡1.LCR 168. 丑数—— 丑数🟢2. LCR 16…

SQLite 的使用

SQLite 是一个轻量级、自包含和无服务器的关系型数据库管理系统(RDBMS),广泛应用于嵌入式系统、移动应用程序和小中型网站。它易于创建、需要的配置较少,并且提供了用于管理和操作数据的强大功能集。本文,我们将带领你…

洛谷P3371【模板】单源最短路径(弱化版)(RE版本和AC版本都有,这篇解析很长但受益匪浅)

解释一下什么叫邻接矩阵: 假设有以下无向图: 1/ \2---3/ \ / \4---5---6对应的邻接矩阵为: 1 2 3 4 5 6 1 0 1 1 0 0 0 2 1 0 1 1 1 0 3 1 1 0 0 1 1 4 0 1 0 0 1 0 5 0 1 1 1 0 1 6 0 0 1 0 1 0 …