性能测试学习第七天-----JMeter之linux环境部署篇
一、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步然后重启生效;
二、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
完成后,分别进入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数据,不能区分接口
3.结果文件result.jtl 可以用sz /home/test/result.jtl 命令下载下来,使用jmeter查看聚合报告中的浏览打开;
4. 在linux中分析结果生成报表:创建文件夹output,存放报表
执行:jmeter –g result.jtl –o ./output 将output中内容一起下下来,浏览器中打开可看到数据和趋势图表。
七、linux上JMeter 分布式压测
各机器部署项目如图:
性能测试学习第七天-----JMeter之linux环境部署篇的更多相关文章
- Jmeter安装与环境部署
Jmeter安装与环境部署 版权声明:本文为博主原创文章,未经博主允许不得转载. 博主:海宁 联系:whnsspu@163.com
- 【NO.2】Jmeter-安装Jmeter - 在Linux环境安装Jmeter - 在Windows环境安装Jmeter
当配置完Jmeter运行的环境之后,就可以开始安装Jmeter了. 为什么既要告诉各位"在Linux系统内安装Jmeter",又要告诉各位"在Windows系统内安装Jmeter"?因为当我们在构建1 ...
- 大数据学习笔记——Linux完整部署篇(实操部分)
Linux环境搭建完整操作流程(包含mysql的安装步骤) 从现在开始,就正式进入到大数据学习的前置工作了,即Linux的学习以及安装,作为运行大数据框架的基础环境,Linux操作系统的重要性自然不言 ...
- Linux环境部署项目引起Out of Memory Error: PermGen Space的解决方案
1. 背景 前几天,在搭建项目时遇到到一些问题,现在整理记录一下. Linux环境:Red Hat Enterprise Linux Server release 6.4: # 查看命令cat /et ...
- Linux环境部署(一)
最近被老大安排了个任务,解决Linux的安装部署问题,特做如下笔记,以便下次安装配置: --------------------Linux上部署项目------------------- 1.解压缩相 ...
- 性能测试学习第五天-----Jmeter测试脚本&基础元件使用
JMeter简介:一个100%的纯Java桌面应用,由Apache组织的开放源代码项目,它是功能和性能测试的工具.具有高可扩展性.支持Web(HTTP/HTTPS).SOAP.FTP.JAVA等多种协 ...
- 性能测试学习 第七课 --loadrunner中JavaVuser脚本的编写
1.环境准备: LoadRunner11----->对应JDK1.6版本(32位) LoadRunner12----->对应JDK1.7版本(32位) (一).JDK下载安装完成 ...
- 性能测试学习第八天-----linux环境整合篇
- Hive学习之路(二)—— Linux环境下Hive的安装部署
一.安装Hive 1.1 下载并解压 下载所需版本的Hive,这里我下载版本为cdh5.15.2.下载地址:http://archive.cloudera.com/cdh5/cdh/5/ # 下载后进 ...
随机推荐
- Loadrunner基本概念解析<一>
学习性能测试前需要掌握的基本概念,以下做一个记录,本文会持续更新,我期望的是,用通俗简洁的语言来进行更好的理解. [基本概念如下:] ---并发用户数: 1️⃣错误的理解: 使用系统的全部用户数 ...
- JS+Jquery自定义格式导出HTML为Word(下列插件同样可以用于Excel导出)
这里的word导出主要采用了jquery.wordexport.js.FileSaver.js,做功能之前我也是找了很多网上的资料,里面涉及到js导出word的用的都是这个插件,只是在自定义样式这一块 ...
- 《HelloGitHub》第 40 期
<HelloGitHub>第 40 期 兴趣是最好的老师,HelloGitHub 就是帮你找到兴趣! 简介 分享 GitHub 上有趣.入门级的开源项目. 这是一个面向编程新手.热爱编程. ...
- C#汽车租赁系统 完整版
Truck.cs类 //卡车类 public class Truck : Vehicle1 { //重载 public int Load { get; set; } //构造函数 public T ...
- AbstractCollection
概述 这个类提供了实现Collection接口的骨架,来最小化实现此接口所做的工作. 要实现一个不可修改的 collection,编程人员只需扩展此类,并提供 iterator 和 size 方法的实 ...
- 脱壳0-FSG壳-详细流程
目录 @ 1 拿到当前加壳程序,用exeinfo/PeID 看一下信息 可以看出是很老的壳FSG. 分析: Entry Point : 000000154,熟悉PE结构的知道,入口点(代码)揉进P ...
- IOS应用无法下载、此时无法安装应用程序
无法安装应用 app开发者,进行程序测试,重试还不行,就重新打包, 个人,更改wifi的dns 在“设置” –> “WiFi” –> 进入当前的WiFi 进入之后点击旁边的叹号,然后进入之 ...
- MyBatis 框架 基础应用
1.ORM的概念和优势 概念: 对象关系映射(Object Relational Mapping,简称ORM)是通过使用描述对象和数据库之间映射的元数据,将面向对象语言程序中的对象自动持久化到关系数据 ...
- Loadrunner参数(摘)
一.占有率分析 1. 平均事务响应时间 Average Transaction Response Time 优秀:<2s 良好:2-5s 及格:6-10s 不及格:>10s 2. 每秒点击 ...
- light oj 1159 - Batman LCS
学过简单动态规划的人应该对最长公共子序列的问题很熟悉了,这道题只不过多加了一条字符串变成三条了,还记得,只要把状态变成三维的即可. //http://lightoj.com/volume_showpr ...