将项目部署到服务器上,并且使用JMeter测试项目性能

news2024/10/6 6:48:59

1、前提条件

首先呢,你要有一个有一个项目,并且打包成jar包。然后你要有一台服务器,你可以登录阿里云(国内社区)然后买按量付费的服务用一下,其实服务器就像虚拟机一样,linux命令执行。但是CentOS跟Red Het系统部分命令有所不同,根据需要进行查询即可。

2.将SpringBoot项目部署到服务器上

第一步:配置java环境

由于项目是java环境,所以需要在服务器中部署java环境,建议先在本地下载好JDK,目前使用的还是1.8版本的,我的项目里边配置的也是我1.8版本的,所以我就部署1.8版本的环境。 java环境配置的步骤:

1. 1查看当前Linux系统是否已经安装java

rpm -qa | grep -i java
复制代码

1.2. 解压已上传的JDK压缩包,并移动到/usr/local目录下

先创建文件夹,然后解压压缩包

#创建文件夹
mkdir /usr/local/hero 
#解压压缩包
tar -zxvf /root/jdk-8u261-linux-x64.tar.gz -C /usr/local/hero
复制代码

1.3. 测试jdk

/usr/local/hero/jdk1.8.0_261/bin/java -version
复制代码

1.4. 配置环境变量

这部分有一个注意点,配置环境变量的时候在服务器中有的人习惯性的配置系统环境变量/etc/profile ,但是配置系统环境变量很容易发生一些错误,所以我们配置当前用户的环境变量即可~/.bashrc

vim ~/.bashrc

G 跳转到最后一行
     i 进入插入模式
     export JAVA_HOME=/usr/local/hero/jdk1.8.0_261
     export PATH=$PATH:$JAVA_HOME/bin
     esc 进入命令行模式
     :wq! 保存
复制代码

1.5. 更新环境变量并测试

#更新
source ~/.bashrc
#测试
java -version
复制代码

第二步将需要的文件上传到服务器上,比如jar包

用winscp将文件上传服务器,这一步需要在本地下载软件winscp,用其他软件也可以,但是我觉得这软件很好用,推荐这个软件。

开启文件后输入服务器外网ip,账户,密码,点击登录就连上服务器了。

左边栏选择你的文件所在文件夹,把文件从左边拉到右边:上传。文件从右边拉到左边:下载。

文件上传到服务器上之后,会存放到/root路径下,查看文件

#进入根目录下
cd ~
#查看路径,方便待会使用该路径下的文件
pwd
#查看文件
ls -lh
复制代码

第三步下载mysql,将数据导入

这一步需要先配置docker环境,docker是一个虚拟化容器,存放了很多资源,你需要什么,用他的命令语言从他上边将软件下载下来即可,但是docker里边不是所有的你需要的都需要的,如果熟悉的话可以上网查一下,你需要的软件时候在docker上存在。

3.1配置Docker环境

1)yum 包更新到最新,-y所有的请求都回答yes

sudo yum update -y
复制代码

2)安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖

sudo yum install -y yum-utils device-mapper-persistent-data lvm2
复制代码

3)设置yum源为阿里云配置yum源的代理,类似于maven镜像仓库,加速下载软件。

sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
复制代码

4)安装docker

sudo yum install docker-ce

##启动docker
systemctl docker
复制代码

5)安装后查看docker版本

docker -v
复制代码

3.2 docker进行获取mysql,将数据导入

(1)拉取mysql镜像

docker pull mysql:5.7
复制代码

(2)创建容器

##密码需要修改成自己的密码
docker run -id --name=c_mysql -p 3306:3306 \
-v /root/mysql/logs:/logs \
-v /root/mysql/data:/var/lib/mysql \
-v /root/mysql/conf:/etc/mysql/conf.d \
-e MYSQL_ROOT_PASSWORD=123456 mysql:5.7


docker cp c_mysql:/etc/mysql/conf.d .

复制代码

-p 代表端口映射,格式为  宿主机映射端口:容器运行端口

-e 代表添加环境变量  MYSQL_ROOT_PASSWORD  是root用户的登陆密码

(3)将数据导入服务器数据库

#进入mysql
mysql -u root -p

#将数据导入mysql
create database hero_all

##导入数据
use /root/hero_all.sql
复制代码

第四步启动jar包

java -jar hero_web-1.0-SNAPSHOT-default.jar
复制代码

到这里,项目已经部署好了,其实理解之后不难,先学会部署,很多细节在之后遇到的时候在慢慢学,慢慢解决,很多细节没接触到,不需要太细抓。

3.JMeter测试部署项目的性能

(1)下载 JMeter下载jmeter.apache.org/download_jm… 下载好后解压。

(2)打开 我第一次使用的时候,是不知道怎么打开的。之后了解到,JMeter是没有exe文件可以点击打开的,需要双击JMeter.bat打开软件

会跳出这个界面,这个bis界面不能关闭,关闭了JMeter就关闭了

软件打开后是这样的

可以点击选项-选择语言-选择中文简体,修改语言。 点击选项--放大(Zoom in),可以将界面字体放大。

JMeter的使用

  • 右键线程组,新增取样器--》http请求

  • http可以模拟任何请求

  • 配置断言---》右键线程组--》添加---》前置处理器--》断言--》响应断言、断言持续时间

  • 配置监听器:--》右键线程组--》添加---》监听器--》聚合报告、汇总图、汇总报告、图像结果、察看结果树

  • 测试接口配置http信息头管理器--》右键线程组--》配置原件--》http信息头管理器--》Content-Type--》application/json

基本的使用就是上述步骤了。如果对本文档有什么意见或者建议可以在评论区指出。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

操作系统的结构与功能流程

一、用户态和内核态 用户态可以理解为用户模式,内核态理解为内核模式 二、功能流程举例 假设你是一名顾客在一家餐厅用餐,餐厅有一个厨师负责烹饪食物,而你作为顾客只能在餐厅的就餐区域内进行点餐、享用餐点。这里就可以将就餐区域看作用户…

【基于视觉的分割】语义分割初探索:一些经典和先进的算法

写在前面: 有很长时间没有更新学习了,因为在忙着做试验写毕业论文。但是,学习不能停止,从今天开始,换成语义分割方向进行深入学习,有兴趣的小伙伴可以和我一起讨论,也欢迎才进入这个方向学习的…

【Grafana】連接mssql並圖表顯示

【Grafana】連接mssql並圖表顯示 1. 函數2. Demo2.1 Query2.2 Query 3. Awakening1.1 Big Data -- Postgres 1. 函數 Macro exampleReplaced by$__time(dateColumn)An expression to rename the column to time. For example, dateColumn as time$__timeEpoch(dateColumn)An e…

改变思想,拥抱毒瘤,让公司走的更远

牛B的人物,早已经厌倦了中英文混杂,他们更进一步,使用中英文缩写,对普通人进行降维打击。更厉害的,造就新的名词,并科普出去。 有几项技术,我从心底里鄙视和厌恶,但每次在技术方案中…

Cursor IDE一个GPT4人工智能自动程序编辑器

让我们来了解一下Cursor IDE是什么。Cursor IDE是一个新型的编程工具,可以通过它生成、编辑以及与人工智能进行交互分析代码。官方网站上的三个单词“Build Software. Fast.”(快速构建软件)以及“Write, edit, and chat about your code wit…

Spark 实现重新分区 partitionBy、coalesce、repartition(附代码演示)

文章目录 1、partitionBy 源码中的定义(部分) 调用方式 2、coalesce 源码中的定义 调用方式 3、repartition 源码中的定义 调用方式 repartition和coalesce的区别 代码演示 (跳转代码) 实现重新分区,本质上…

如何轻松进行接口测试?试试这款神器Apifox,亲测好用!

Apifox学习教程地址:https://www.bilibili.com/video/BV1mb411o7Go/? 目录:导读 ​引言 一、接口调试 二、Mock功能 三、自动化测试 引言 如果你曾经为手工编写和维护测试用例而感到疲惫,那么你需要试试这款神器——Apifox! …

【云原生】Kubernetes(k8s)之Pod概念和使用

k8s之Pod概念和使用 一、Pod简介1.1、Pod的阶段(状态)1.2、容器状态 二、Pod的定义2.1、restartPolicy2.2、imagePullPolicy2.3、command2.4、args2.5、resources 三、Pod的使用3.1、创建并访问Pod3.2、多个应用容器3.3、Init容器3.3.1、Init容器与普通容…

劝人写码,千刀万剐——“前端已死”难道要成真了?

移动互联网的兴起,传统行业的数字化转型,大前端技术的普及,随之而来的就是Vue为代表的前端框架和工具的兴起,前端开发的门槛降低。但发展,稳定,衰落是亘古不变的事物发展规律。 一些有趣的迹象 最近逛社区…

看完这篇文章你就彻底懂啦{保姆级讲解}-----(LeetCode刷题203.707.206翻转链表) 2023.4.21

目录 前言算法题(LeetCode刷题203移除链表元素)—(保姆级别讲解)算法题(LeetCode刷题707.设计链表)—(保姆级别讲解)代码参考: 算法题(LeetCode刷题206.反转链…

DC:5靶机通关详解

信息收集 漏洞发现 扫个目录 发现存在footer.php 查看,发现好像没什么用 参考他人wp得知thankyou.php会包含footer.php 可以通过传参来包含别的文件 但是我们不知道参数,这里用fuzz来跑参数 这里用wfuzz的时候报错了 解决方法如下 卸载 sudo apt --purge remove python3-pycu…

最强省钱攻略——IC设计公司老板必读

2023年,国内半导体产业发展面临着很大的不确定性,这应该是共识。 IC芯片设计公司,重度研发创新导向。 站在企业角度,怎么在不确定性下,组织人、财、物,面向未来,应对市场竞争? 算…

vCener 配置 vSan 网络

文章目录 1. 准备2. 创建vsan网络2.1 创建 vSphere Distributed Switch (vds)2.2 添加管理主机2.3 添加 networking 3. 删除3.1 删除 vmkernel adapter3.2 删除 hosts3.3 删除 DSwitch 1. 准备 三台物理机搭建 exsi一台部署 vcenter 管理三台 exsi每台物…

扬帆优配|普通股和优先股的区别?普通股和优先股哪个好?

各位投资者或许了解过股票是分为普通股和优先股的,但对其并不十分了解。那么普通股和优先股有什么区别?普通股和优先股哪个好?扬帆优配也为我们准备了相关内容,以供参考。 普通股和优先股的区别? 普通股和优先股的主要…

2023-04-14 算法面试中常见的查找表问题

2023-04-14 算法面试中常见的查找表问题 1 Set的使用 LeetCode349号问题:两个数组的交集 给定两个数组,编写一个函数来计算它们的交集。示例 1:输入: nums1 [1,2,2,1], nums2 [2,2] 输出: [2] 示例 2:输入: nums1 [4,9,5], nums2 [9,4,9,8,4] 输出:…

直播预告 | 时序数据处理的云端利器:TDengine Cloud 详解与演示

当下,我们正处在一个万物互联的时代,大数据、云原生、AI、5G 等数字技术极大地方便了人们的生活,但智能物联网产生的海量数据却成为众多企业在数据处理上的巨大痛点。从本质来看,这些数据大多是产生自各种设备和传感器的时序数据&…

康耐视Designer,通过VC5与西门子S7-1200 PLCProfinet通讯详细

测试使用软件版本 Designer Version: 2.7 GSD: GSDML-V2.3-Cognex-VC5-20140828STEP 7 Professional V14Network Configurator Version: 3.56测试使用硬件 Cognex Vision Controller VC5CIC-5000Siemens PLC: S7-1200 CPU 1214C DC/DC/RLY1.PLC端设置 1.新建一个项目,添加对应…

没看错!一行python代码就可以帮您获取图片中的文字信息

最近工作中有需求需要用python对图片中的文字进行识别,调研了一下,选择了tesseract, 目前在github上有50.5k个star!python可以调用,安装也十分方便,pip install pytesseract 即可。如果没有Pillow 包&…

ERTEC200P-2 PROFINET设备完全开发手册(7-2)

7.2 添加自定义参数 编辑GSDML文件,对于64 bytes DI 进行如下修改,由于一般的IO模块不需要支持PROFIEnergy,去掉PROFIEnergy支持;修改模块ID(ModuleIdentNumber "0x00000080");子模块ID不变&am…

Linux中的进程优先级

Linux中的进程优先级 目录 Linux中的进程优先级引入1、基本概念2、查看进程3、PRI和NI4、修改进程优先级5、进程切换One more thing 引入 在Linux操作系统中,进程的优先级对于系统的性能和响应时间至关重要。进程的优先级决定了该进程在系统资源分配中所占的比例。…