高楼的性能工程实战课
高楼
盾山科技 CEO,7DGroup 创始人
19172 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 35 讲
特别放送 (1讲)
结课测试 (1讲)
结束语 (1讲)
高楼的性能工程实战课
15
15
1.0x
00:00/00:00
登录|注册

02 | 关键概念:性能指标和场景的确定

你好,我是高楼。
上节课我们把性能从“测试”引到了“工程”级别。接下来,我们要理一理工程级别中几个重要的概念,包括:
性能需求指标;
性能场景;
性能分析决策树;
查找性能瓶颈证据链。
这些概念贯穿整个性能工程,有了它们,我们就不会在性能项目中迷失方向。为什么这么说呢?接下来的课程里,我会给你一一分析。
为了能让你更好地消化这些内容,我们把这几个概念分成三节课来详细讲解。今天这节课我们先来看“性能需求指标”和“性能场景”。

性能需求指标

说到性能需求,真是我从业十几年来性能职场辛酸的起点。因为我几乎没有见过精准明确的需求,很多时候性能需求都变成了一句空话。如果你对此感触不深,我们不妨来看两个反面教材。
反面教材 1:
像这样的性能需求,基本上就是业务方的一种直观感觉,想看看单用户的操作响应,所以算不上是什么专业的性能测试需求。
不过你需要注意一点,这样的需求背后很容易埋着一个坑:列这个表的人可能想让系统在任何压力场景下都能达到这样的性能指标。那你就应该知道,明确性能需求是一个关键点,我们要明确在什么样的业务压力场景下要求这样的指标。在大压力的场景下,表格中所列的时间需求估计就实现不了了。因此,上面这张表格里的性能需求属于不合格的需求。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

性能工程中的关键概念包括性能需求指标、性能场景、性能分析决策树和查找性能瓶颈证据链。在性能需求指标方面,作者强调了其重要性,并提出了合理的性能需求指标应该从四种不同的性能场景入手,区别对待。性能场景被分为基准、容量、稳定性和异常四类,其中包含了性能脚本、参数化数据、监控策略、执行控制、场景调整、软硬件环境、基础数据/铺底数据以及挡板/Mock/第三方等内容。此外,性能分析决策树和性能瓶颈证据链也被强调。总结来说,性能工程需要将业务指标和技术指标对应起来,并在不同的性能场景中定义好不同的性能需求指标。读者需要思考性能场景为何只分为四类就够了以及常见的性能需求指标都细化到了什么程度。整体而言,本文为读者提供了性能工程中的关键概念,为实际工作提供了指导。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《高楼的性能工程实战课》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(34)

  • 最新
  • 精选
  • Geek2025
    性能场景为什么只分为四类就够了 1.性能测试是为了产品正常运转和用户体验。结合实际运用的实际,主要还是通过稳定性和容量进行测试,再结合基准分析性能情况,最后避免异常情况发生而补充异常

    作者回复: 嗯,你领悟了。

    2021-10-21
    5
  • sky_you
    我其实想问,这个业务比例要到什么程度,比如我有两个大功能。一个订单管理。一个信息管理。 订单管理中又有新建,查询。信息管理中有新建用户,删除用户。如果我要确定业务比例。是确定大功能的业务比例还是,具体到每个小功能中呢?现在的需求有很多不专业。压根就不会想到这些,只能做性能的人去整理这些。

    作者回复: 业务比例最好能到把具体接口罗列出来的程度。 比如你这里说到的订单管理,里面有新建、查询。信息管理中有新建、删除。如果只到大的功能模块,订单管理:信息管理 是 3:1,那还是无法知道订单管理中的新建:查询的比例是多少。所以这个是无法得到具体的业务模型的。 按我的逻辑,从生产环境中的数据统计直接得到的接口比例,进而推算业务比例,还更符合生产场景。

    2021-06-03
    5
  • Zzzz
    老师,基准场景里的响应时间指标,指的是在最大TPS那个点上的响应时间?还是最大响应时间?

    作者回复: 最大稳定的tps位置对应的响应时间。

    2021-05-28
    5
  • 期待老师后面的实战,希望不是一带而过

    作者回复: 我也希望不是一带而过。看优化结果就可以判断。

    2021-03-25
    2
  • Hant
    关于性能测试脚本,一直有个疑问,希望高老师帮忙解惑,谢谢: 1.录制脚本,录制的脚本会多很多接口,各种资源文件,如图片,css等数据(虽然部分可以通过负载均衡做静态加载),但是会非常臃肿 2.单独写的脚本,仅仅只是涉及到业务的几个接口,但是这样的话跟真实业务差太远 这两种脚本应该如何选择? 另外,在压测过程中能关闭消息通知,登录日志这些接口吗?这些接口非常影响系统性能。

    作者回复: 1. 按真实的用户逻辑来做脚本就可以。应该有静态资源,脚本中也就要有相应的请求。通常如果静态资源放在CDN,而测试目标又是为了知道后台应用的最大容量,才能直接从接口开始。 2. 日志最好按生产环境设置。

    2022-04-24
    1
  • Geek_ann
    想问下老师 刚刚列得性能需要 :某个单业务场景 200并发的请求,相应时间满足需求。 就直接上线程数200,循环1个。这种测法对吗?我看大多数不专业的都是这么测的

    作者回复: 那指定不能对!

    2022-02-26
    1
  • future
    老师能再发一下网盘链接吗 感谢

    作者回复: 在第30章。

    2021-11-02
    2
    1
  • byyy
    "异常问题通常有两大类:其一是架构级的异常;其二是容量引起的性能异常。" 老师,不太理解架构级的异常和容量引起的性能异常。可以举例分别说明下吗?

    作者回复: 架构异常像负载均衡、分布式逻辑。 容量异常就是TPS高的时候,出现的问题。

    2021-07-10
    1
  • Geek_7a22e1
    1、场景各项指标的值是如何确定的? 2、需求文档中就应当列出场景和对应的指标吗?

    作者回复: 场景的指标定义来自于业务的需求。我这里只是给个示例,如果在具体的工作中,就要做线上的业务统计。 需求文档中应该给出场景和对应的业务指标,要不然测试的目标不就没有了吗?

    2021-04-26
    1
  • 坚持
    关于异常场景的性能需求指标,具体能够举一个例子么。这块场景没有理解。 故障转移?高可用?

    作者回复: 可用性、可靠性、灾备等都是异常场景。 比如说RTO、RPO就是典型的灾备指标。

    2023-06-27归属地:安徽
收起评论
显示
设置
留言
34
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部