谷粒商城-高级篇-Day14-压力测试


1、性能指标

响应时间

响应时间指用户从客户端发起一个请求开始,到客户端接受到从服务器返回的响应结束,整个过程所耗费的时间

HPS:每秒点击次数,单位是次/秒

TPS:系统每秒处理交易数,单位是笔/秒

QPS:系统每秒处理查询数,单位是次/秒

对于互联网业务中,如果某些业务有且仅有一个请求连接,那么TPS=QPS=HPS,

一般情况下用TPS来衡量整个业务流程,用QPS来衡量接口查询次数,用HPS来表示对服务器单击请求

金融行业:1000TPS-50000TPS

保险行业:100TPS-100000TPS

制造行业:10TPS-5000TPS

互联网电子商务10000TPS-1000000TPS

互联网小型网站:500TPS-10000TPS

互联网中型网站:500TPS-10000TPS

最大响应时间:指用户发出请求或者指令到系统做出的反应的最大时间

最小响应时间指用户发出请求或者指令到系统做出的反应的最小时间

90%响应时间:是指所有的用户的响应时间,第90%的响应时间

从外部看,性能测试主要关注如下三个指标

吞吐量:每秒钟系统能够处理的请求数,任务数

响应时间:服务处理一个请求或一个任务的耗时

错误率:一批请求中结果出错的请求所占的比例

JMeter Address Already in use 错误解决

windows本身提供的端口访问机制的问题.

windows提供给TCP/IP链接的端口为1024-5000并且要四分钟来循环回收他们,就导致我们在短时间内跑大量请求时,将端口占满了

win+r打开regedit注册表

\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters下

右击新建一个DWORD名WieMAxUserPort

在这里插入图片描述

在这里插入图片描述

重启计算机

jconsole

在cmd窗口直接输入jconsole

在本地链接中选中服务双击打开
在这里插入图片描述

jvisualvm

在这里插入图片描述

jvisualvm的作用:

监控内存泄漏,跟踪垃圾回收,执行时内存,cpu分析,线程分析
在这里插入图片描述

运行:正在运行的

休眠:sleep

等待:wait

驻留:线程池里面的空闲线程|
监视:阻塞的线程,正在等待锁

JVM分析&调优

压测内容压测线程数吞吐量/sec90%响应时间99%响应时间
Nginx507,2021018
Gateway5014,470514
简单服务5022,115410
首页一级菜单渲染50574(db,thymeleaf)124286
三级分类数据获取506(db)7,3327879
首页全量数据获取5010(静态资源)
Nginx+Gateway50
Gateway+简单服务506,0511638
全链路501931,0083023

在这里插入图片描述

docker stats命令查看

在这里插入图片描述

单压nginx

get请求,192.168.205.128 端口80 路径:/

发现nginx的cpu占用比较高

在这里插入图片描述

单压网关

localhost:88 路径:/
在这里插入图片描述

网关比较浪费cpu

测试简单服务

访问product模块中的indexController

@ResponseBody
@GetMapping("/hello")
public String hello(){
    return "hello";
}

在这里插入图片描述

开始压测,填入数据

测试网关+简单服务

修改网关的配置文件,在路由断言加上/hello

- id: product
  uri: lb://gulimall-product
  predicates:
    - Path=/api/product/**,/hello

访问http://localhost:88/hello也能返回hello

开始压测,填入数据

中间件越多,性能损失越大,大多都损失在网络交互了

测试全链路

访问地址:gulimall.com/hello

端口:80

开始测试,填入数据

单压首页一级菜单渲染

访问地址:localhost/

端口:10001

单压三级分类数据

访问地址:/localhost:10001/index/catalog.json

开始测试,填入数据

单压首页全量数据获取

限制并行下载数量为6

在这里插入图片描述

访问地址:localhost

路径:/

端口:10001

总结:

中间件越多,性能损失越大,大多都损失在网络交互了

业务:

​ Db

​ 模板的渲染速度

​ 静态资源

优化:关闭日志,给数据库添加索引,打开thymeleaf的缓存

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值