性能测试学习第七天-----JMeter之linux环境部署篇

时间:2021-05-28 05:50:16

一、linux获取动态ip或静态ip:

  1. virtualbox 加载linux虚拟机镜像文件,加载时重置全部网卡,加载后网络选择“桥接网络”--本机当前使用网卡;

  2. ifconfig         #获取linux虚拟机ip地址,记下HWADDR 值;

  3. vi /etc/sysconfig/network-scripts/ifcfg-eth0           #将 HWADDR 修改为上步的记录下来的值,BOOTPROTO=dhcp,自动获取动态ip;

  4. rm -rf /etc/udev/rules.d/70-persistent-net.rules             #删除网络缓存文件;

  5. service network restart          #重启网络服务

  6. ifconfig          #验证是否自动获取了ip

  7. 如果在第5步报错failed,也可以设置使用静态ip,设置 ifcfg-eth0 里的 BOOTPROTO=static ,如下图,ip设置时,与主机当前wifi保持同一个网段。设置后进行第4步然后重启生效;

性能测试学习第七天-----JMeter之linux环境部署篇

二、linux上jdk 安装

  1. 路径:/usr/local/ ,输入rz,上传jdk-8u201-linux-i586.tar.gz,执行:tar xvf jdk-8u201-linux-i586.tar.gz 解压,生成jdk文件夹;

  2.执行 vi /etc/profile,配置环境变量,在profile 下面增加这段后,按esc,冒号,wq保存并退出:

    export JAVA_HOME=/usr/local/jdk1.8.0_201
    export JMETER_HOME=/export/servers/apache-jmeter-5.1.1      (jmeter配置,在/export/servers/路径下)
    export JAVA_BIN=/usr/local/jdk1.8.0_201/bin
    export CLASS_PATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/jre/lib
    export PATH=$PATH:$JAVA_BIN:$JMETER_HOME/bin

  3.执行 source /etc/profile 使配置文件生效;

  4.执行java -v ,验证,返回jdk1.8,则安装配置成功;

三、linux上mysql 安装

  1.先卸载系统自带的mysql,停止mysql:service mysql stop

  2.查找以前是否装有mysql,命令:rpm -qa|grep -i mysql,可以看到mysql的几个包:

    qt-mysql-4.6.2-26.el6_4.i686
    perl-DBD-MySQL-4.013-3.el6.i686
    MySQL-client-5.6.17-1.linux_glibc2.5.i386
    MySQL-server-5.6.17-1.linux_glibc2.5.i386

       依次删除上述四个包:rpm -e --nodeps 包名

        删除老版本mysql的开发头文件和库:

    rm -rf /usr/lib/mysql    

    rm -rf /usr/include/mysql
    rm -rf /etc/my.cnf
    rm -rf /var/lib/mysql

  3.将新版本 mysql-5.6.27-linux-glibc2.5-i686.tar.gz上传到/usr/local/ 下,tar xvf mysql-5.6.27-linux-glibc2.5-i686.tar.gz,解压(如果解压过程中出现tar的报错,忽略)

  4.然后重命名:mv mysql-5.6.27-linux-glibc2.5-i686 mysql

  5. 添加系统mysql组和mysql用户:

    groupadd mysql
    useradd mysql -g mysql
  6,进入到解压完的mysql目录下,修改文件所有者和组为mysql , chown -R mysql:mysql ./*

  7.安装数据库:执行命令 ./scripts/mysql_install_db --user=mysql

  8.进入到mysql的support-files目录下,执行cp mysql.server /etc/init.d/mysql

  9.启动mysql服务:执行命令service mysql start

  10.执行命令:ps -ef | grep mysql 看到mysql服务说明启动成功

  11.进入到mysql的bin目录下,设置密码:./mysqladmin -u root password '密码'

  12.创建软链接,保证任何路径下都可以启动mysql:ln -s /usr/local/mysql/bin/mysql /usr/local/bin/mysql

  13. 登录mysql,mysql  -u root -p

  14. 对远程访问进行授权:   grant all privileges on *.* to root@"%" identified by '123456' with grant option;

  mysql linux下导入数据

  导入(必须在mysql内部执行):在mysql命令行下:source xxx.sql

  导出(mysql外部执行):mysqldump

  (1)导出整个数据库(包括数据库中的数据):  mysqldump -u username -p dbname > dbname.sql

  (2)导出数据库结构(不含数据):  mysqldump -u username -p -d dbname > dbname.sql

  (3)导出数据库中的某张数据表(包含数据):  mysqldump -u username -p dbname tablename > tablename.sql

  (4)导出数据库中的某张数据表的表结构(不含数据):  mysqldump -u username -p -d dbname tablename > tablename.sql

  mysql官方客户端常用命令:

  创建数据库:create database xxx;

  查看所有数据库:show databases;

  使用某个数据库:use xxx;

  查看当前数据库下有什么表:show tables;

  查看某个表的表结构:desc xxx;

  退出:exit;

  例如:

  1.创建数据库,启动数据库服务,登录mysql(见上方第9、13步)后,在mysql内部,输入 create database oa;

  2.进入oa库,导入sql: use oa;  然后执行 source oa.sql; 。

 四、linux上JMeter安装及参数优化 

  1.路径:/export/servers/ ,输入rz,上传apache-jmeter-5.1.1.zip,执行:unzip apache-jmeter-5.1.1.zip 解压,生成jmeter文件夹;

  2.配置环境变量,参见二、linux上jdk 安装的环境变量配置步骤2,进到Jmeter 根目录下需要添加执行权限 chmod -R +x ./*

  3.进入 jmeter文件夹,bin目录下:修改reportgenerator.properties 中 jmeter.reportgenerator.overall_granularity=1000(报表中数据展示间隔1秒);

  4.修改控制台取样间隔的设置,bin下 jmeter.properties 中

    summariser.interval=10,默认为30s,最低可修改为6s;

    sampleresult.default.encoding=UTF-8  ,默认编码方式;

      修改bin下jmeter中    "${HEAP:="-Xms1g -Xmx1g -XX:MaxMetaspaceSize=2048m"}"    默认1024,修改为2048

五、linux上tomcat部署

  1. 单项目部署:仅一个项目时,将war包放到tomcat下webapps目录下,然后返回bin目录,执行:./startup.sh & tail -f ../logs/catalina.out 启动服务,然后去浏览器进入项目访问,就可以验证服务启动是否成功了。

  2.多项目部署:

  • 创建文件夹/export/apps,将项目的war包或其他格式压缩包 放入路径/app-pinter/pinter下,注意层级关系。/export/apps/app-oa/oa/WEB-INF等文件
  • 复制tomcat为多个,重命名:
  • 项目1:mv apache-tomcat-8.5.38 tomcat-pinter,cd tomcat-pinter/conf, vi server.xml,  非编辑模式下按“/”搜索appBase, 修改路径为/export/apps/app-pinter;
  • 项目2:mv apache-tomcat-8.5.38 tomcat-oa,cd tomcat-oa/conf, vi server.xml,  非编辑模式下按“/”搜索appBase, 修改路径为/export/apps/app-oa;
  • 然后修改项目2启动时所占用的端口号8080(HTTP/1.1)、8009(AJP/1.3)、8005(SHUTDOWN)为:8081、8010、8006

               性能测试学习第七天-----JMeter之linux环境部署篇

              完成后,分别进入tomcat-**/bin,运行:./startup.sh & tail -f ../logs/catalina.out,即可启动各自对应的项目;

六、linux上jmeter脚本运行及报告生成  

  1.将windows上调试好的jmx脚本上传至home目录下新建文件夹test,(java请求,将jar包和依赖包文件夹放至jmeter下lib/ext/目录下);

  2.单机器测试步骤: 执行./jmeter -n -t /home/test/TestPlan.jmx -l /home/test/result.jtl
    -n: 命令行模式,no-gui;
    -t:jmx脚本路径;
    -l:jtl结果文件存放路径

    运行显示结果如下图,只展示total数据,不能区分接口

性能测试学习第七天-----JMeter之linux环境部署篇

  3.结果文件result.jtl 可以用sz /home/test/result.jtl 命令下载下来,使用jmeter查看聚合报告中的浏览打开;

  4. 在linux中分析结果生成报表:创建文件夹output,存放报表

   执行:jmeter –g result.jtl –o ./output   将output中内容一起下下来,浏览器中打开可看到数据和趋势图表。

 七、linux上JMeter 分布式压测

  各机器部署项目如图:

  性能测试学习第七天-----JMeter之linux环境部署篇