阿里云linux安装jmeter并进行压测
一、阿里云linux安装JDK
1、下载安装JDK
jdk官网,选择linux版本,下载并保存。
(一)yum安装
安装epel的yumyuan
yum install epel-release -y
查看yum源里当前jdk有哪些版本
yum list | grep openjdk
执行安装命令:
yum install java-1.8.0 -y
检查是否安装成功
java -version
(二)rpm安装
官网下载rpm包
xshell上传到服务器
执行安装命令:
rpm -ivh jdk-8u161-linux-x64.rpm
检查是否安装成功
java -version
(三)tar安装
官网下载tar.gz包
xshell上传到服务器
移动到/opt目录下:mv jdk-8u161-linux-x64.tar.gz /opt
进入/opt目录:cd /opt
解压:tar -zxvf jdk-8u161-linux-x64.tar.gz
进入安装目录:cd jdk-8u161-linux-x64
配置环境变量:
vim ~/.bash_profile
添加下面的内容
export PATH="/opt/jdk1.8.0_161/bin:$PATH"
然后保存退出,使用source命令更新这个文件,命令是:
source ~/.bash_profile
输出一下环境变量,命令是:
echo $PATH
检查是否安装成功
java -version
二、阿里云linux安装jmeter
1、官网下载jmeter安装包,上传至/opt目录下,并解压
cd /opt
tar -zxvf apache-jmeter*
2、配置环境变量
vim /etc/profile
增加如下代码
#jmeter环境变量
export PATH=/root/jmeter/bin:$PATH
保存退出
source /etc/profile让配置生效
jmeter -v检查是否安装成功

三、Jmeter非GUI模式压测
非GUI界面,压测参数讲解
- -h 帮助
- -n 非GUI模式
- -t 指定要运行的 JMeter 测试脚本文件
- -l 记录结果的文件 每次运行之前,(要确保之前没有运行过,即xxx.jtl不存在,不然报错)
- -r Jmter.properties文件中指定的所有远程服务器
- -e 在脚本运行结束后生成html报告
- -o 用于存放html报告的目录(目录要为空,不然报错)
官方配置文件地址 http://jmeter.apache.org/usermanual/get-started.html
jmeter -n -t linux_users_api.jmx -l result.jtl -e -o /usr/local/softwate/jmeter/temp/ResultReport
jmeter -n -t /Users/jack/Desktop/linux_users_api.jmx -l result.jtl -e -o /Users/jack/Desktop/person/jmeter/temp
四、html可视化压测报告讲解

1、dashboard讲解
1)Test and Report informations Source file:jtl文件名
Start Time :压测开始时间
End Time :压测结束时间
Filter for display:过滤器
Lable:sampler采样器名称
2)APDEX(Application performance Index)
apdex:应用程序性能指标,范围在0~1之间,1表示达到所有用户均满意
T(Toleration threshold):可接受阀值
F(Frustration threshold):失败阀值
3)Requests Summary
OK:成功率
KO:失败率
4)Statistics 统计数据
lable:sampler采样器名称
samples:请求总数,并发数*循环次数
KO:失败次数
Error%:失败率
Average:平均响应时间
Min:最小响应时间
Max:最大响应时间
90th pct: 90%的用户响应时间不会超过这个值(关注这个就可以了)
2ms,3ms,4,5,2,6,8,3,9
95th pct: 95%的用户响应时间不会超过这个值
99th pct: 99%的用户响应时间不会超过这个值 (存在极端值)
throughtput:Request per Second吞吐量 qps
received:每秒从服务器接收的数据量
send:每秒发送的数据量
2、charts讲解
1)Over Time(随着时间的变化)
Response Times Over Time:响应时间变化趋势
Response Time Percentiles Over Time (successful responses):最大,最小,平均,用户响应时间分布
Active Threads Over Time:并发用户数趋势
Bytes Throughput Over Time:每秒接收和请求字节数变化,蓝色表示发送,黄色表示接受
Latencies Over Time:平均响应延时趋势
Connect Time Over Time :连接耗时趋势
1)Throughput
Hits Per Second (excluding embedded resources):每秒点击次数
Codes Per Second (excluding embedded resources):每秒状态码数量
Transactions Per Second:即TPS,每秒事务数
Response Time Vs Request:响应时间和请求数对比
Latency Vs Request:延迟时间和请求数对比
1)Response Times
Response Time Percentiles:响应时间百分比
Response Time Overview:响应时间概述
Time Vs Threads:活跃线程数和响应时间
Response Time Distribution:响应时间分布图
五、Jmeter压测接口的性能优化
1、使用非GUI模式:jmeter -n -t test.jmx -l result.jtl
2、少使用Listener, 如果使用-l参数,它们都可以被删除或禁用。
3、在加载测试期间不要使用“查看结果树”或“查看结果”表监听器,只能在脚本阶段使用它们来调试脚本。
4、包含控制器在这里没有帮助,因为它将文件中的所有测试元素添加到测试计划中。]
5、不要使用功能模式,使用CSV输出而不是XML
6、只保存你需要的数据,尽可能少地使用断言
7、如果测试需要大量数据,可以提前准备好测试数据放到数据文件中,以CSV Read方式读取。
8、用内网压测,减少其他带宽影响压测结果
9、如果压测大流量,尽量用多几个节点以非GUI模式向服务器施压
阿里云linux安装jmeter并进行压测的更多相关文章
- 阿里云Linux安装软件镜像源
阿里云Linux安装软件镜像源 阿里云是最近新出的一个镜像源.得益与阿里云的高速发展,这么大的需求,肯定会推出自己的镜像源.阿里云Linux安装镜像源地址:http://mirrors.aliyun. ...
- 阿里云linux安装nginx,亲测有效
系统平台:CentOS release 6.6 (Final) 64位. 一.安装编译工具及库文件 yum -y install make zlib zlib-devel gcc-c++ libtoo ...
- 压力测试(六)-阿里云Linux服务器压测接口实战
1.SpringBoot 接口打包,并用jar包方式部署 简介:用jar包方式在控制台进行启动 打包 mvn package && java -jar target/gs-spring ...
- 阿里云部署安装redis无法访问
ps:我在linux上安装redis后发现一直端口不通连接不上,折腾一晚上.后来在阿里云官方回复(机器人)中看到下面的回复: 2019/02/28 22:50 自己一试,过完是端口监听是本 ...
- 在阿里云Linux服务器上安装MySQL
申请阿里云Linux服务器 昨天在阿里云申请了一个免费试用5天的Linux云服务器. 操作系统:Red Hat Enterprise Linux Server 5.4 64位. CPU:1核 内存:5 ...
- 阿里云Linux服务器安装 nginx+mysql+php
阿里云Linux服务器安装 nginx+mysql+php步骤1.登录服务器2.下载安装包3.将安装包上传到服务器的/home目录下 注:使用rz sz命令进行本地和服务器间的上传.下载,安装命令yu ...
- 阿里云Linux服务器初探
阿里云Linux服务器初探 阿里云Linux服务器初探 因为钱包的关系,本人买了一个660元2年的1核1GB的小服务器(centos是Linux的发行版),在当初是用2核4GB(内存)的时候使用的是w ...
- 阿里云centos安装svn和submin
概述 没有找到可以让团队方便使用的云盘,暂时搭建一个svn凑合用一下 svn有三种安装方式 安装方式 服务程序 服务协议 用户和密码 授权 系统配置 svn独立安装 svnserve svn pass ...
- [docker]通过阿里云源安装docker && flannel不通问题解决(try this guy out)
docker清理容器 # 容器停止后就自动删除: docker run --rm centos /bin/echo "One"; # 杀死所有正在运行的容器: docker kil ...
随机推荐
- AngularJS:实例
ylbtech-AngularJS:实例 1.返回顶部 1. AngularJS 实例 实例 您可以在线编辑实例,然后点击按钮查看结果. AngularJS 实例 <div ng-app=&qu ...
- 侯捷STL学习(一)--顺序容器测试
开始跟着<STL源码剖析>的作者侯捷真人视频,学习STL,了解STL背后的真实故事! 视频链接:侯捷STL 还有很大其他视频需要的留言 第一节:STL版本和重要资源 STL和标准库的区别 ...
- Mysql 不存在则插入,存在则更新
)) BEGIN ) ; END 开始写了一大堆的代码来实现,原来还有这种方法,惊讶~~~ 如果不存在,就插入一条数据:如果存在,更新某个字段. on duplicate key update: my ...
- ffmpeg: ‘UINT64_C’ was not declared in this scope (转)
ffmpeg 默认是用C文件来编译的,如果某个CPP文件想引用ffmpeg中的某些函数或者头文件,有可能出现 ‘UINT64_C’ was not declared in this scope的错误 ...
- DAY11-MYSQL视图、触发器、事务、存储过程、函数
一 视图 视图是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名称]即可获取结果集,可以将该结果集当做表来使用. 使用视图我们可以把查询过程中的 ...
- php 如何禁用eval() 函数实例详解
在php中eval是一个函数并且不能直接禁用了,但eval函数又相当的危险并经常会出现一些问题,今天我们就一起来看看eval函数对数组的操作及php 如何禁用eval() 函数: <?php $ ...
- html 5 data-* (dataset) 属性和 jquery data方法比较
一些文章在介绍html 5 data-* (dataset)属性时,会提到jquery的data方法,认为data方法能够很好的利用html 5的这个特性.但实际上,二者的兼容性是很差的.下面给出一段 ...
- poj3557 Map Generator
传送门 题目大意 给定两个数n,p;表示n个点中任意两点连边的概率为p,求生成的图是个连通块的概率 分析 我们发现直接求产生联通块的概率并不容易,于是我们转而考虑计算不能生成联通块的概率,公式如下: ...
- Entity Framework Tutorial Basics(30):
CRUD using Stored Procedure: In the previous chapter, we have seen how to get data using a stored pr ...
- Entity Framework Tutorial Basics(21):CRUD Operation in Connected Scenario
CRUD Operation in Connected Scenario: CRUD operation in connected scenario is a fairly easy task bec ...