高楼的性能工程实战课
高楼
盾山科技CEO,7DGroup创始人
新⼈⾸单¥59.9
1476 人已学习
课程目录
已更新 26 讲 / 共 31 讲
0/4登录后,你可以任选4讲全文学习。
开篇词 (1讲)
开篇词 | 打破四大认知局限,进阶高级性能工程师
免费
性能工程的核心理念 (4讲)
01 | 性能工程:为什么很多性能测试人员无法对性能结果负责?
02 | 关键概念:性能指标和场景的确定
03 | 核心分析逻辑:所有的性能分析,靠这七步都能搞定
04 | 如何构建性能分析决策树和查找瓶颈证据链?
性能工程的实践关键点 (5讲)
05 | 性能方案:你的方案是否还停留在形式上?
06 | 如何抽取出符合真实业务场景的业务模型?
07 | 性能场景的数据到底应该做成什么样子?
08 | 并发、在线和TPS到底是什么关系?
09 | 如何设计全局和定向监控策略?
基准场景 (13讲)
10 | 设计基准场景需要注意哪些关键点?
11 | 打开首页之一:一个案例,带你搞懂基础硬件设施的性能问题
12 | 打开首页之二:如何平衡利用硬件资源?
13 | 用户登录:怎么判断线程中的Block原因?
14 | 用户信息查询:如何解决网络软中断瓶颈问题?
15 | 查询商品:资源不足有哪些性能表现?
16 | 商品加入购物车:SQL优化和压力工具中的参数分析
17 | 查询购物车:为什么铺底参数一定要符合真实业务特性?
18 | 购物车信息确定订单:为什么动态参数化逻辑非常重要?
19 | 生成订单信息之一:应用JDBC池优化和内存溢出分析
20 | 生成订单信息之二:业务逻辑复杂,怎么做性能优化?
21 | 支付前查询订单列表:如何分析优化一个固定的技术组件?
22 | 支付订单信息:如何高效解决for循环产生的内存溢出?
容量/稳定性/异常场景 (3讲)
23 | 决定容量场景成败的关键因素有哪些?
24 | 容量场景之一:索引优化和Kubernetes资源分配不均衡怎么办?
25 | 容量场景之二:缓存对性能会有什么样的影响?
高楼的性能工程实战课
15
15
1.0x
00:00/00:00
登录|注册

25 | 容量场景之二:缓存对性能会有什么样的影响?

高楼 2021-05-17
你好,我是高楼。
上节课,我们经历了三个阶段的分析优化,分别解决了在压力线程不变的情况下,TPS 随时间增加而增加的问题,还有数据库加索引的问题,以及 Kubernetes 调度不均衡的问题。最后,TPS 曲线看起来挺正常了,但是命运不会因为我努力了就会放过我。
为什么这么说呢?因为在上节课中,我们的场景只持续了十几分钟,对于容量场景来说,时间还是不够长。你知道,压力持续十几分钟,且 TPS 显示正常,并不能说明系统没有问题。
因此,我又对系统进行持续的压力测试,就是在这个过程中,又遇到了新的问题……

第四阶段分析

场景压力数据

这是我在进行持续加压过程中,得到的场景数据:
看上面的曲线图就能知道,这是在压力持续的过程中,出现了 TPS 掉下来的问题,这是不能接受的。

拆分响应时间

针对上述问题,我们先来看一下现在的时间消耗。这是已经运行了一段时间的响应时间图:
我们可以根据整体的平均响应时间,一个个分析这些接口的时间消耗在了哪里。其实,从这张图就能看出,所有的业务时间相比上一节课的响应时间图都增加了。由于所有业务的响应时间都增加了,说明不是某个业务本身的问题,所以,我们任意分析一个接口就可以。
这里我用生成确认订单这个接口做时间拆分。在之前部署系统的时候,我们把 SkyWalking 采样率设置得非常低,只有 5% 左右,目的为了不让 APM 影响性能和网络。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/1000字
划线
笔记
复制
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
该试读文章来自付费专栏《高楼的性能工程实战课》,如需阅读全部文章,
请订阅文章所属专栏新⼈⾸单¥59.9
立即订阅
登录 后留言

精选留言

由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论
返回
顶部