7D-RESAR性能工程:术语表

文章目录

  • 1. 前言
    • 1.1. 编写目的
    • 1.2. 适应范围与对象
  • 2. 术语表
    • 2.1. RESAR性能工程
    • 2.2. 性能测试
    • 2.3. 性能项目
    • 2.4. 性能项目方案
    • 2.5. 性能项目计划
    • 2.6. 性能需求类术语
      • 2.6.1. 性能需求/指标
      • 2.6.2. 并发用户
      • 2.6.3. 在线用户
      • 2.6.4. 并发度(并发率)
      • 2.6.5. 事务
      • 2.6.6. 每秒事务数 (transaction per second,简写:TPS)
      • 2.6.7. 响应时间(response time,简写:RT)
      • 2.6.8. 错误率
      • 2.6.9. 交易/接口/业务
    • 2.7. 性能测试类术语
      • 2.7.1. 性能脚本
      • 2.7.2. 参数化
      • 2.7.3. 关联
      • 2.7.4. 思考时间
      • 2.7.5. 集合点
      • 2.7.6. 检查点/断言
      • 2.7.7. 压力机
    • 2.8. 性能场景类术语
      • 2.8.1. 并发线程
      • 2.8.2. 并发交易
      • 2.8.3. 性能场景
      • 2.8.4. 基准场景
      • 2.8.5. 容量场景
      • 2.8.6. 稳定性场景
      • 2.8.7. 异常场景
      • 2.8.8. 业务模型
      • 2.8.9. 监控模型
      • 2.8.10. 数据模型
      • 2.8.11. 分析模型
      • 2.8.12. 业务场景
    • 2.9. 性能曲线类术语
      • 2.9.1. 性能抖动
      • 2.9.2. 性能折线图
      • 2.9.3. 最大值/最小值/平均值/标准差/方差
      • 2.9.4. 性能直方图
    • 2.10. 性能瓶颈类术语
      • 2.10.1. 性能瓶颈
      • 2.10.2. 性能计数器
      • 2.10.3. 性能瓶颈证据链
    • 2.11. 性能监控类术语
      • 2.11.1. 性能分析决策树
      • 2.11.2. 全局监控
      • 2.11.3. 定向监控
      • 2.11.4. 响应时间拆分

根据近期7DGroup群员的反馈,对第一版本的术语进行了修改。

1. 前言

1.1. 编写目的

本规范旨在规范RESAR性能工程中的相关术语,规范性能项目的沟通基础,指导企业性能项目实施。

1.2. 适应范围与对象

本规范适用于企业级性能工程。

本规范预期读者为IT技术管理人员、架构师、性能实施人员、项目开发人员、运维支持人员等。

2. 术语表

2.1. RESAR性能工程

RESAR性能工程是承接业务需求和架构、开发产出物,通过明确性能需求指标、准备性能环境、设计性能场景、分析定位优化性能瓶颈、产出性能报告的性能测试实施项目,输出生产容量评估结论和性能参数配置,并通过环比生产环境性能容量需求、业务需求、性能场景执行数据判断性能需求是否全部满足并实施的完整过程。

2.2. 性能测试

性能测试是针对系统的性能指标,建立性能测试模型,制定性能测试方案,制定监控策略,在场景条件之下执行性能场景,分析判断性能瓶颈并调优,最终得出性能结果来评估系统的性能指标是否满足既定值。

2.3. 性能项目

性能项目指对IT系统性能容量评估并定位性能瓶颈的项目。其包括使用系统基准测试、容量测试、稳定性测试、异常测试、高可用测试、灾备测试、可扩展性测试等需要使用压力手段实施的系统性能容量评估项目。

2.4. 性能项目方案

性能方案是指在性能项目中,对系统架构、被测系统或业务范围、性能需求指标、性能场景执行策略、性能环境、基础数据、监控策略、性能工具(包括测试及监控、分析工具)、瓶颈分析策略、组织架构、输入输出物、里程碑计划、风险等进行详细描述的综合性文档。

2.5. 性能项目计划

性能项目计划是指在性能项目中,定义阶段、输入输出、人员角色、任务时长以及任务依赖的计划文档。

2.6. 性能需求类术语

2.6.1. 性能需求/指标

性能需求/指标是在性能场景执行之前定义的业务和技术需求/指标。

业务性能需求/指标是指在单交易/单接口/单业务上的具体数值(包括平均值、标准方差、90%值、95%值等)。

技术性能需求/指标是指在性能计数器上的具体数值。

在整个性能项目实施过程中,性能需求/指标需要和性能场景比对,以确定性能场景是否可结束,并且在性能项目结果报告中,要明确指出性能需求/指标是否达到。

2.6.2. 并发用户

并发用户指单位时间内完成满足真实用户完整的业务操作的用户个数。

注意:并发线程不直接等价于并发用户。

2.6.3. 在线用户

在线用户指在单位时间内系统可维护的用户会话个数。

2.6.4. 并发度(并发率)

并发度是指被测系统在单位时间内的并发用户数与在线用户数的比例值。

2.6.5. 事务

事务是指在性能脚本中明确定义起止点的执行单元。在性能场景中,事务起止点的定义应根据性能需求/指标确定,即如果明确要求交易/接口/业务/用户级别的性能需求/指标,则事务就应该定义在对应级别。

2.6.6. 每秒事务数 (transaction per second,简写:TPS)

每秒事务数是在单位时间内(如1秒)性能脚本中所定义的事务完成的次数。此处的“完成”是指从发出请求并得到完整的响应内容的过程。

2.6.7. 响应时间(response time,简写:RT)

响应时间是指完成一个完整的事务所消耗的时间。响应时间包括了请求时间和响应时间。

2.6.8. 错误率

错误率是指出现错误的交易/接口/业务数与已执行的交易/接口/业务总数的比值。在性能项目中,性能需求/指标需要包含明确的可接受的错误率范围。

2.6.9. 交易/接口/业务

交易/接口/业务是根据不同行业对性能需求指标的描述习惯进行的区分。如在金融交易类系统(如银行核心系统等)称为交易;在互联网系统中称为接口;在一些特定的业务系统(如ERP等)称为业务。

2.7. 性能测试类术语

2.7.1. 性能脚本

性能脚本是指模拟生产环境真实业务产生的一系列技术请求的集合。

2.7.2. 参数化

参数化是在性能脚本中为了模拟真实业务的不同输入值而使用的替换输入值方法。

2.7.3. 关联

关联是指在性能脚本中为了模拟真实业务在请求过程中出现的动态数值而使用的替换动态值的方法。

2.7.4. 思考时间

思考时间是指在性能脚本中为了模拟真实用户的操作间隔而采用的技术。

2.7.5. 集合点

集合点是指在性能脚本中为了模拟大量真实用户在短时间段内访问系统而采用的技术。

2.7.6. 检查点/断言

检查点/断言是指在性能脚本中比对返回值与预期值的技术。设计检查点/断言的目的是为了确定性能脚本成功执行。

2.7.7. 压力机

压力机是指通过多进程/多线程模拟满足场景设计的单个压力发起节点。通常情况下,单压力节点是指虚拟机或独立的硬件主机。

2.8. 性能场景类术语

2.8.1. 并发线程

并发线程指压力工具中同时运行的压力线程个数。注意,并发线程不直接等价于并发用户。

2.8.2. 并发交易

并发交易指被测系统中在单位时间内完成的业务交易个数。

注意:并发线程不直接等价于并发交易。

2.8.3. 性能场景

性能场景是一系列模拟生产真实场景的技术实现。性能测试场景包括:性能脚本、业务模型、监控模型等内容。性能场景包括基准场景、容量场景、稳定性场景等。

2.8.4. 基准场景

基准性能场景是为了验证系统中所有业务(单交易、单接口、单业务)本身的容量能力而设计的性能场景。基准性能场景以单业务连续递增压力为基础,测试出单业务的最大容量,为容量性能场景做准备。

2.8.5. 容量场景

容量场景是按照真实生产环境的业务容量模型的配置,在连续递增并发压力线程的情况下进行测试,验证系统在真实生产环境中的业务峰值。

2.8.6. 稳定性场景

稳定场景是在固定的系统容量下持续运行长时间,查看系统长期运行时的业务处理能力及系统可能存在的缺陷。

稳定性性能场景是为了验证系统在真实生产环境中是否可以长期稳定地运行。稳定性性能场景需要根据容量性能场景的结果进行设计。

2.8.7. 异常场景

异常场景是通过模拟系统可能遇到的各种异常情况,如带宽受限、网络连通不好、网络延时、超时、各系统主机宕机、应用异常终止、资源死锁、大并发用户集中爆发访问等情况,检查系统的异常处理能力。

2.8.8. 业务模型

业务模型是指通过统计各业务的访问量得到的比例值。

通常是通过统计生产环境的各业务访问量得到业务模型,业务模型在具体的性能场景配置时比例之和为100%。

2.8.9. 监控模型

监控模型是指针对系统技术栈规划监控工具以覆盖全局监控中所有性能计数器的方法。

2.8.10. 数据模型

数据模型(Data Model)是数据特征的抽象,它从抽象层次上描述了系统的静态特征、动态行为和约束条件,为数据的表示与操作提供一个抽象的框架。数据模型所描述的内容有三部分,分别是数据结构、数据操作和数据约束。

[此定义来自网络。]

2.8.11. 分析模型

分析模型是指性能瓶颈判断过程中使用到的逻辑抽象。分析模型描述了性能瓶颈相关的计数器、分析动作及判断规则,为性能瓶颈分析提供策略支撑。

2.8.12. 业务场景

业务场景即生产系统在运行过程中所有相关的状态信息。

2.9. 性能曲线类术语

性能曲线包括TPS、响应时间、错误率、资源使用率(CPU、磁盘IO、网络、内存、系统等)等和性能相关的所有曲线。

2.9.1. 性能抖动

性能抖动是指在性能场景执行过程中性能计数器的采样值的分散程度,可以体现出性能曲线出现的上下波动。性能曲线的抖动可以用计数器采样值的方差和标准差来表示。

2.9.2. 性能折线图

性能折线图指对性能计数器采集的数据使用折线图的形式展现。有些性能计数器适合使用使用折线图的形式展现,如对TPS使用折线图的形式展现以判断TPS的趋势。

2.9.3. 最大值/最小值/平均值/标准差/方差

最大值/最小值/平均值/标准差/方差是在性能工程中描述性能计数器采集的数据集的基本工具,使用最大值/最小值/平均值/标准差/方差可以描述性能计数器的趋势,以判断是否满足容量目标或判断性能瓶颈。

2.9.4. 性能直方图

性能直方图是指对性能计数器采集的数据使用直方图的形式展现。有些性能计数器适合使用直方图的形式展现,如对响应时间使用直方图的形式展现以判断响应时间的范围分布。

2.10. 性能瓶颈类术语

2.10.1. 性能瓶颈

性能瓶颈是指在性能场景执行过程中出现的技术问题,以及不能满足性能测试需求/指标的性能问题。

2.10.2. 性能计数器

性能计数器是用于监测和度量系统或应用服务性能的工具,是系统提供的一种计量机制,用于收集和记录各种性能指标和统计数据。

2.10.3. 性能瓶颈证据链

性能瓶颈证据链是指为找到性能瓶颈的根本原因分析出的计数器的关联关系描述。性能瓶颈证据链应遵循四个特性:连贯性、完整性、准确性、不可跳跃性。

2.11. 性能监控类术语

2.11.1. 性能分析决策树

性能分析决策树是指通过对系统架构的分析,罗列所有技术组件的模块的性能计数器而形成的关系树。简言之,性能分析决策树即计数器关系树。

2.11.2. 全局监控

全局监控是指对被测系统完整的性能分析决策树中所有的计数器进行监控。

2.11.3. 定向监控

定向监控是指为在定位性能瓶颈过程中,根据全局监控中计数器值进行下钻分析的过程中执行的监控。

2.11.4. 响应时间拆分

响应时间拆分是指通过对被测系统的架构进行分析,利用分段的技术手段把响应时间定位到具体的技术组件,进而利用分层的技术手段把响应时间定位到技术组件的具体模块。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/13297.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Kubernetes进阶对象Deployment、DaemonSet、Service

Deployment Pod 在 YAML 里使用“containers”就可以任意编排容器,而且还有一个“restartPolicy”字段,默认值就是 Always,可以监控 Pod 里容器的状态,一旦发生异常,就会自动重启容器。 不过,“restartPo…

Java小游戏之汤姆猫

背景: 博主写过羊了个羊小游戏,客户觉得羊了个羊同学写过了,想换一个,于是笔者想到了汤姆猫。就是那个以前在苹果手机上的猫。 过程: 初始会有一个猫的图片展示,然后你点击按钮,猫会有不同动作…

C++进阶之路:何为默认构造函数与析构函数(类与对象_中篇)

✨✨ 欢迎大家来访Srlua的博文(づ ̄3 ̄)づ╭❤~✨✨ 🌟🌟 欢迎各位亲爱的读者,感谢你们抽出宝贵的时间来阅读我的文章。 我是Srlua小谢,在这里我会分享我的知识和经验。&am…

Web3与物联网:构建智能连接的数字世界

引言 随着互联网的不断发展,物联网(Internet of Things, IoT)作为一种新兴的信息技术,正在逐渐渗透到我们的生活和工作中。而随着Web3的兴起,物联网将迎来新的发展机遇。本文将探讨Web3与物联网的结合,如何…

如何在职场中构建稳固地位:持续学习、拓展人脉与职业规划

在日益激烈的职场竞争中,保持一种稳健且前瞻性的状态是至关重要的,它可以帮助我们在各种“裁员潮”中保持相对安全的位置。以下是一些建议,帮助我们判断和维持在职场中的安全位置: 首先,持续学习和提升技能是关键。职场…

2024年NOC大赛创客智慧(西瓜创客)图形化复赛编程真题模拟试卷包含答案

NOC 复赛图形化模拟题 【题目要求】 1、添加角色小猫和“Balloon1”角色气球(大小 70) 2、添加背景“Boardwalk” 3、点击绿旗,角色初始位置如图,小猫从舞台左侧出发,向舞台右 侧移动,移动过程中不断切换造型 4、当小猫碰到气球角色,小猫停止移动,气球逐渐向舞台上方…

FFmpeg开发笔记(二十七)解决APP无法访问ZLMediaKit的直播链接问题

上一篇文章介绍了如何通过ZLMediaKit实现视频推拉流,并使用VLC播放器验证视频直播地址。即使不用VLC播放器,直接在Qt工程的C代码中调用FFmpeg的API,也能访问ZLMediaKit的直播地址,并正常渲染视频画面。关于如何在Qt工程中引入FFmp…

Oracle中全量CHECKPOINT和增量CHECKPOINT的区别与作用

全量CHECKPOINT和增量CHECKPOINT对用户都是透明的,而增量CHECKPOINT只不过是将全量CHECKPOINT要写的脏块分时间分批次写到数据文件中而已,此操作可以极大地减少对数据库性能的影响。 全量CHECKPOINT 全量CHECKPOINT是指DBWR进程将脏缓冲区列表中的脏块一…

Spring Boot集成Security快速入门Demo

1.什么是Security? Spring Security是一个Java框架,用于保护应用程序的安全性。它提供了一套全面的安全解决方案,包括身份验证、授权、防止攻击等功能。Spring Security基于过滤器链的概念,可以轻松地集成到任何基于Spring的应用…

ifconfig 无输出

https://www.cnblogs.com/YYFaGe/p/14482813.html YYFaGe 博客园首页联系管理随笔 - 56 文章 - 0 评论 - 2 阅读 - 94650 ifconfig 无输出 在终端执行ifconfig发现无任何输出,也无报错(基于hi3559av100开发板)。 1、参考这个连接解决&…

月薪3万,沉迷“薅羊毛”

在网购江湖中,蟹老板是一位拥有十年经验的资深“羊毛党”。 他不仅是位精明的数学家,更是一位高效的“生产线”工人,专注于各大网购平台的优惠机制。每逢618大促,他总能凭借超凡的洞察力和手速,轻松斩获丰厚的“羊毛”…

peft+llama3训练自定义数据

要微调自己的模型训练 LLaMA 3,则需要准备一个 JSON 格式的数据集,其中每个条目包含输入文本和相应的标签(如果有的话)。以下是一个 JSON 数据集的示例格式: [{"input": "这是一个输入样本。",&q…

17.高并发场景下CAS效率的优化

文章目录 高并发场景下CAS效率的优化1.空间换时间(LongAdder)2.对比LongAdder和AtomicLong执行效率2.1.AtmoictLong2.2.LongAdder2.3.比对 3.LongAdder原理3.1.基类Striped64内部的三个重要成员3.2.LongAdder.add()方法3.3.LongAdder中longAccumulate()方…

pytorch-13_1 深度学习之数据准备

1、手动实现训练集和测试集的切分 1. data_split()函数 接下来我们开始实践模型评估过程,首先是对训练集和测试集的划分,我们尝试创建一个切分训练集和测试集的函数。 def data_split(features, labels, rate=0.7):"""训练集和测试集切分函数:param feature…

搜索二维矩阵 - LeetCode 热题 64

大家好!我是曾续缘🧡 今天是《LeetCode 热题 100》系列 发车第 64 天 二分查找第 2 题 ❤️点赞 👍 收藏 ⭐再看,养成习惯 搜索二维矩阵 给你一个满足下述两条属性的 m x n 整数矩阵: 每行中的整数从左到右按非严格递增…

六西格玛绿带培训:解锁质量工程师的职场新篇章

在质量管理这条道路上,我们或许都曾有过这样的疑问:为何付出了同样的努力,却未能获得预期的回报?当我们看到身边的同行们逐渐步入高薪的行列,而自己却似乎陷入了职业的泥沼,这种对比无疑令人倍感焦虑。然而…

了解等保测评的中间件安全Tomcat,如何检查配置是否符合安全要求?

在等保测评中,Tomcat中间件的安全性是一个重要的评估内容。Tomcat是一个开源的应用服务器,广泛应用于Web应用程序的开发和部署。由于其易用性和灵活性,Tomcat成为了一个受欢迎的目标,被黑客攻击和滥用。因此,保证Tomca…

算法提高之信使

算法提高之信使 核心思想&#xff1a;单源最短路 因为数据范围很小 可以考虑floyd算法(三重循环) #include <iostream>#include <cstring>#include <algorithm>using namespace std;const int N 110,INF 0x3f3f3f3f;int d[N][N];int n,m;int main(){cin…

【STM32-MX_GPIO_Init分析】

MX_GPIO_Init分析源码如下&#xff1a; __HAL_RCC_GPIOE_CLK_ENABLE源码如下&#xff1a; #define RCC ((RCC_TypeDef *) RCC_BASE) #define RCC_BASE (AHB1PERIPH_BASE 0x3800UL) #define AHB1PERIPH_BASE (PERIPH_BASE 0x00020000U…

Android Studio kotlin 转 Java

一. 随笔记录 java代码可以转化成kotlin代码&#xff0c;当然 Kotlin 反过来也可以转java 在Android Studio中 可以很方便的操作 AS 环境&#xff1a;Android Studio Iguana | 2023.2.1 二. 操作步骤 1.步骤 顶部Tools ----->Kotlin ------>Show Kotlin Bytecode 步…