性能分析之解析 RESAR 性能分析七步法

news/2024/11/8 12:33:15/

文章目录

    • 一、压力场景数据分析
    • 二、架构分析
    • 三、响应时间分析
    • 四、全局监控分析
    • 五、定向监控
    • 六、判断性能瓶颈
    • 七、提出解决方案

一、压力场景数据分析

下面是⼀个登录接⼝的基准场景测试,JMeter 启动后,线程在 1-2 个的时候 TPS 已经达到 200 左右,随着压力增加只有时间增加,TPS 就一直没有增加,错误也没有。
在这里插入图片描述
结论:有性能瓶颈!这是在看压力数据时一定要给出的结论,就是有没有瓶颈,然后就是下一步要做什么?

不断告诉大家做性能不能靠猜也不能靠经验,因为这些容易出错,那么我们靠什么呢?
在这里插入图片描述
我们看到的呈现已经是果,对于果,我们应该怎么去排查的起因呢?这里我们引用《RESAR 性能分析七步法》:
在这里插入图片描述

二、架构分析

根据 《 RESAR 性能分析七步法 》第二步:看架构,知道架构就不会众盲摸象,各说异端。
在这里插入图片描述

这里再引用部署架构来指导我们更好理解他们调用关系。
在这里插入图片描述
这里在补充一张接口调用关系图。
在这里插入图片描述

三、响应时间分析

第三步就是拆分响应时间,用日志、链路监控工具都可以,但是一定要拆准!
在这里插入图片描述

四、全局监控分析

接下来请出我们独创的性能分析决策树思路。
在这里插入图片描述

查看各服务器整体资源。
在这里插入图片描述

在这里插入图片描述
补充查看网络信息,因为在上图中没有网络信息。像这样的动作,就是因为监控工具的监控盲点而做的动作。
在这里插入图片描述
在这里插入图片描述

五、定向监控

对于操作系统来说我们应该怎么下手分析呢,这里引用操作系统决策树做分析指导。(这样的分析决策树在课堂上可是手把手教怎么创建自己的分析决策树还有他们之间的逻辑关系)
在这里插入图片描述
从这个逻辑中,就要推断出具体的证据链了。

六、判断性能瓶颈

性能瓶颈的判断是要靠上一步的证据链,在这一步中是要给出明确的瓶颈结论。

七、提出解决方案

根据瓶颈的结论提出解决方案,并给出解决方案的对比建议,从时间、成本等角度做出对比,选择最适合的解决方案。

分析到这里我们就可以见证不是靠经验不是靠猜而靠证据链靠逻辑一步一步把问题找到并解决。

古人有句话这样说:“授人以鱼,不如授人以渔”。掌握分析思路才能帮助企业节约资源,让资源使用最大化。


http://www.ppmy.cn/news/2069.html

相关文章

Debezium系列之:安装部署debezium2.0以上版本的详细步骤

Debezium系列之:安装部署debezium2.0以上版本的详细步骤 一、相关技术博客二、升级debezium2.0以上版本注意事项三、安装jdk四、修改kafka相关参数五、启动kafka connect六、查看kafka connect插件七、debezium升级遇到的错误汇总一、相关技术博客 升级debezium版本到debeziu…

Python基础知识进阶之正则表达式

一.match re.match 是从字符串的起始位置匹配一个模式, 匹配成功 re.match 方法返回一个匹配的对象,否则返回 None。 re.match(pattern, string, flags0) pattern: 匹配的正则表达式。 string: 要匹配的字符串。 flags&…

HTML学生个人网站作业设计 明星易烊千玺介绍(HTML+CSS) web前端开发技术 web课程设计 网页规划与设计

🎉精彩专栏推荐👇🏻👇🏻👇🏻 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业…

VIVADO时序约束之时序例外(set_false_path)

前言 当FPGA设计中的逻辑行为不能满足默认的时序要求时,设计者需要使用时序例外语法对该逻辑行为进行处理,例如:有些结果只需每个一个或多个时钟周期捕获一次。 vivado开发工具支持4个时序例外约束的语法,如下表所示:…

XXL-JOB核心源码解读及时间轮原理剖析

你好,今天我想和你分享一下XXL-JOB的核心实现。如果你是XXL-JOB的用户,那么你肯定思考过它的实现原理;如果你还未接触过这个产品,那么可以通过本文了解一下。 XXL-JOB的架构图(2.0版本)如下: 它…

C++中的野指针

一篇非常全面的介绍指针的博客: C/C 中的指针[非常全面] 一:维基百科的定义 在计算机编程领域中,迷途指针,或称悬空指针、野指针,指的是不指向任何合法的对象的指针。 当所指向的对象被释放或者收回,但是对该指针没有…

内存可见性问题

目录 1.什么是内存可见性问题 2.内存可见性问题是怎么发生的 3.解决方法:volatile 4.volatile使用的注意事项 5.内存可见性问题的延伸 缓存(cache) 1.什么是内存可见性问题 首先来看一段代码 class Counter{public int flag 0; } pu…

免费分享20套微信小程序源码 源码免费下载【强烈推荐】

淘源码:国内知名的源码免费下载平台 微信小程序源码包括:商城系统、点餐外卖、垃圾分类、预约洗车、物业管理、校园跑腿、驾考学习、会议预约、图书管理、智能停车、在线答题等小程序源码。 源码分享,文末获取源码! 1、JAVA微信…