# aries **Repository Path**: rain_yang/aries ## Basic Information - **Project Name**: aries - **Description**: SpringBoot2.1.2, MyBatis-Plus3.1.0 , avue。 集成代码生成功能和Jmeter压测web界面操作,常用小工具: Json格式数据,key:val以及url参数互相转化。。 - **Primary Language**: Java - **License**: MulanPSL-1.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 4 - **Created**: 2020-04-17 - **Last Updated**: 2022-02-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 1.项目介绍 本项目基于SpringBoot2.x框架,主要功能有 - 代码生成工具 - Jmeter压测配置web界面操作 ## 1.1项目框架 - SpringBoot2.1.2 - MyBatis-Plus3.1.0 - avue ## 1.2项目环境 | profile环境 | 说明 | | -------------------- | -------------------------- | | beta | beta测试环境 | | localhost | 本地测试环境 | | pro | 正式环境 | ## 1.3项目模块 | 模块 | 说明 | | -------------------- | -------------------------- | | aries-core | 核心模块 | | aries-code-gen | 代码生成模块 | | aries-jmeter | 压测Jmeter模块 | | aries-dashboard | 控制台模块 | # 2.运行部署 以beta环境为例 ## 2.1运行前准备 先创建安装目录 ```aidl mkdir /data/webserver ``` ### 2.1.1安装Jmeter - **apache-jmeter-3.3.tgz** ```aidl #进入/data/webserver目录 cd /data/webserver #创建目录: jmeter mkdir jmeter #上传下载的jmeter压缩包到服务器 rz #解压缩上传好的jmeter压缩包apache-jmeter-3.3.tgz tar -zxvf apache-jmeter-3.3.tgz #列一下目录,可看到解压缩的目录为: apache-jmeter-3.3 ll #进入目录: apache-jmeter-3.3 cd apache-jmeter-3.3/ #获取当前工作目录: /data/webserver/jmeter/apache-jmeter-3.3 pwd ``` ### 2.1.2安装phantomjs - **phantomjs-2.1.1-linux-x86_64.tar.bz2** ```aidl #进入/data/webserver目录 cd /data/webserver #创建目录: phantom-js mkdir phantom-js #上传下载的phantomjs压缩包到服务器 rz #解压缩上传好的phantomjs压缩包phantomjs-2.1.1-linux-x86_64.tar.bz2 tar -zxvf phantomjs-2.1.1-linux-x86_64.tar.bz2 #列一下目录,可看到解压缩的目录为: phantomjs-2.1.1-linux-x86_64 ll #进入目录: phantomjs-2.1.1-linux-x86_64 cd phantomjs-2.1.1-linux-x86_64/ #获取当前工作目录: /data/webserver/phantom-js/phantomjs-2.1.1-linux-x86_64 pwd ``` ### 2.1.4配置profile - 编辑系统配置 **vi /etc/profile** ```aidl export PHANTOM_HOME=/data/webserver/phantom-js/phantomjs-2.1.1-linux-x86_64 export HADOOP_HOME=/usr/local/hadoop/hadoop2 export SPARK_HOME=/usr/local/spark/spark export PATH=$PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin:$MAVEN_HOME/bin:$PHANTOM_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$SPARK_HOME/bin export PATH ``` - 系统配置生效 **source /etc/profile** ### 2.1.5验证 - **验证jmeter** ```aidl cd /data/webserver/jmeter/apache-jmeter-3.3/bin sh jmeter -v ``` - **服务器控制台显示** ![Jmeter版本信息](https://gitee.com/yuntingbiluo/aries/raw/master/doc/img/jmeter_v.png) - **验证phantomjs** ```aidl phantomjs -v ``` - **服务器控制台显示** ```aidl 2.1.1 ``` ## 2.2启动程序 - **本地运行,保证相关配置,直接使用IDEA启动即可** - **服务器运行,手动部署** ```aidl #打包编译 mvn clean package 或者 mvn clean package --settings /Users/bijiahao/develop/maven/settings.xml (maven配置,如果有私有仓库的话) #进入程序目录 cd /data/www/aries-dashboard-9999 (没有目录,先mkdir /data/www/aries-dashboard-9999创建) #上传打好的jar包 rz #启动jar包 java -Xms256m -Xmx512m -jar -Dspring.profiles.active=beta -Dlogging.file=/data/log/aries-dashboard-9999/aries-dashboard.log ${jar_name}& ``` - **服务器运行,采用Jenkins** ```aidl #!/bin/bash #export BUILD_ID=dontKillMe这一句很重要,这样指定了,项目启动之后才不会被Jenkins杀掉。 export BUILD_ID=dontKillMe #指定最后编译好的jar存放的位置 www_path=/data/www/aries-dashboard-9999 #Jenkins中编译好的jar位置 jar_path=/root/.jenkins/workspace/aries-dashboard/aries-dashboard/target/ #Jenkins中编译好的jar名称 jar_name=aries-dashboard.jar #进入最后指定存放jar的位置 cd ${www_path} echo "www_path: ${www_path}" #获取运行编译好的进程ID,便于我们在重新部署项目的时候先杀掉以前的进程 pid=$(ps -ef | grep ${jar_name} | grep -v grep | awk '{print $2}') #杀掉以前可能启动的项目进程 if [ -n "$pid" ];then echo "kill PID: $pid" kill -9 $pid else echo "kill PID error" fi #删除之前的jar包 rm -rf ${www_path}/${jar_name} #将编译好的jar复制到最后指定的位置 cp ${jar_path}/${jar_name} ${www_path} #启动jar,指定SpringBoot的profiles为beta,后台启动 java -Xms256m -Xmx512m -jar -Dspring.profiles.active=beta -Dlogging.file=/data/log/aries-dashboard-9999/aries-dashboard.log ${jar_name}& ``` # 3.使用示意 ## 3.1代码生成工具 - **代码生成基础配置页面** ![代码生成基础页面](https://gitee.com/yuntingbiluo/aries/raw/master/doc/img/code-gen-base.png) - **代码生成选择表页面** ![代码生成选择表页面](https://gitee.com/yuntingbiluo/aries/raw/master/doc/img/code-gen-table.png) ## 3.2压测Jmeter工具 - **验证Jmeter** ![验证Jmeter图示](https://gitee.com/yuntingbiluo/aries/raw/master/doc/img/jmeter-check-v.png) - **验证Phantomjs** ![验证Phantomjs图示](https://gitee.com/yuntingbiluo/aries/raw/master/doc/img/phantomjs-check-v.png) - **Jmeter创建jmx用例页面** ![Jmeter创建jmx用例页面图示](https://gitee.com/yuntingbiluo/aries/raw/master/doc/img/jmeter-add.png) - **Jmeter上传jmx用例页面** ![Jmeter上传jmx用例页面图示](https://gitee.com/yuntingbiluo/aries/raw/master/doc/img/jmeter-upload.png) - **Jmeter预览PDF测试报告** ![Jmeter预览PDF测试报告图示](https://gitee.com/yuntingbiluo/aries/raw/master/doc/img/jmeter-report-pdf.png) - **Jmeter下载测试报告** > 下载报告 ![Jmeter下载测试报告图示](https://gitee.com/yuntingbiluo/aries/raw/master/doc/img/jmeter-report-down.png) > zip包内容 ![Jmeter下载测试报告ZIP解压缩图示](https://gitee.com/yuntingbiluo/aries/raw/master/doc/img/jmeter-report-zip.png) > 查看index.html ![Jmeter下载测试报告ZIP内容图示](https://gitee.com/yuntingbiluo/aries/raw/master/doc/img/jmeter-report-zip-index.png)