性能测试Jmeter的使用

本次测试使用了分部署服务哈,并且tomcat的接口是从redis取数哈。
1环境
1个mysql数据库,内存1个,cpu 1核
tomcat的web服务器,内存2g,cpu 2核,部署分布式tomcat服务,2个tomcat
reids缓存服务器,1g内存,cpu 1核
全部是虚拟机哈:
这里写图片描述
/usr/local/tomcat
这里写图片描述
tomcat1的端口为:8080
tomcat2的端口为:8081
tomcat1的web域名为:rest.j.server80
tomcat2的web域名为:rest.j.server81
nginx的域名为rest.j.server
因为nginx是使用域名匹配的,其实rest.j.server80,rest.j.server81,rest.j.com这三个ip映射都一样哈。修改了hosts的映射。

nginx做的是反向代理和负载均衡,配置如下:

upstream tomcatserver1 {
server 192.168.247.138:8080;
server 192.168.247.138:8081;
}
upstream tomcatserver2 {
server 192.168.247.138:8081;
}
server {
listen 80;
server_name rest.j.server80;
location / {
proxy_pass http://tomcatserver1;
index index.html index.htm;
}


}
server {
listen 80;
server_name rest.j.server81;
location / {
proxy_pass http://tomcatserver2;
index index.html index.htm;
}


}

反向代理:当输入的域名为rest.j.server81这个时候,nginx反向代理,把请求转发到http://tomcatserver2,然后通过upstream tomcatserver2配置的server来处理请求,实际被nginx转到192.168.247.138:8081来处理请求哈。
负载均衡:当直接访问nginx的域名是rest.j.server可以通过tomcatserver1的两个服务器的一个来处理请求,两个服务器默认权重一样,从来达到负载均衡的作用。

2使用Jmeter测试接口性能
Jmeter下载地址:
http://jmeter.apache.org/download_jmeter.cgi
apache-jmeter-3.1.zip
使用jdk1.8版本哈。
直接解压就可以使用了,启动程序在bin目录的jmeter.bat。
现在设置测试计划哈
基础url-就是域名哈:rest.j.com
接口:/rest/item/info/562379
用户2000,启动时间15秒,访问次数2次
1对应的Jmeter配置截图如下哈:
这里写图片描述

2设置默认的请求http
这里写图片描述
这里写图片描述

3添加一个http请求哈
这里写图片描述
这里写图片描述
这里的完整接口url为:
http://rest.j.com/rest/item/info/562379
返回数据为:
这里写图片描述
4添加结果图
一个图形结果和一个聚合结果
这里写图片描述

5保存运行
这里写图片描述

3怎么分析结果
这里写图片描述
样本数目:线程数(请求用户数)*请求次数,这里是2000*2
最新样本:这是最后一个请求的处理时间,这里是2毫秒
吞吐量:服务器每分钟处理的请求量
平均:这里是每个请求的平均处理时间
中值:所有处理时间的中位数
横坐标是时间,纵坐标是处理时间

这里写图片描述
Lable:请求类型
Samlpe:请求次数
average:总的运行时间/请求次数
median:中间值代表时间,表示一般的请求时间低于该值,一般的请求时间高于该值
90%Line:90%的请求处理时间,在这个值之下
95%,99%类似。
min:服务器相应最小值
max:服务器相应最大值
error:错误率
throughout:吞吐量,每秒或者每分钟的处理请求数
Received KB/sec:每分钟或者每秒钟的接受的数据量kb
sent KB/sec:每秒或者每分钟的发生的数据kb
从这里看出99%的请求都是13豪秒的。但是Max是177毫米,可能是因为某几次请求时间过长导致。但是整体数据都还不错哈……
秒级吞吐量为每秒264,可以看出这还不是这个的极限,因为99%都在13毫秒以下哈。
如果是并发量特别大的情况下,允许error%在5%以下。
出现error的原因有:
500 internal server error错误。
这个是nginx服务器的问题,详情可以参考文章:
http://www.jb51.net/article/35675.htm

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
课程从基础讲起,全课程以实战为主,每个知识点通过实际案例演练讲解理论+实践结合,更容易理解,适合小白,低门槛,快速上手。 课程同时涵盖web端和移动端app测试,同时还加入了抓包工具的使用; 1) 第一阶段为JMETER 5.4.1 (最新版本)工具使用篇,通过Jmeter 介绍和安装、http 取样器、JDBC 取样器、JMETER 组件详细讲解、配置元件、三种参数化方式教你玩转JMETER 参数化、工作过程中间所需的常用函数、聚合报告、察看结果树、汇总报告等监听器知识,后置处理器、后置处理器之正则表达式提取器提取响应内容实践、读取本地JSON格式文件实例、正则表达式操作符、正则表达式工具之Regextester,系统全面学习正则表达式,突破JMETER 知识难点,响应断言、JMETER分布式、分布式原理、搭建JMETER 分布式、WebService协议接口测试。 每一个知识点采用理论加案例的方式,吃透每一个知识点,为性能测试实践奠定基础。 2) 第二阶段为性能测试实践篇1、通过JMETER 实践爬虫技术,爬取第三方平台全网页地址、批量爬取国外网站壁纸10W+图片并保存到本地;2、详细介绍Fiddler 抓包工具,Fiddler 抓包工具原理、Fiddler 抓取PC 端和移动端包信息、JMETER+Fiddler 结合使用对PC 端项目进行性能测试项目实践,提升PC 端性能测试能力;3、JMETER+Fiddler  结合使用对app 项目进行性能测试项目实践,提升app项目性能测试能力4、性能测试常见的业务指标和技术指标、响应时间、TPS、HPS等知识进行讲解5、通过JMETER 对移动端项目进行性能测试实战; 

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

猫二哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值