全网最全,性能测试-全链路压测问题总结,一篇概全...

news2025/1/12 17:58:53

目录:导读

    • 前言
    • 一、Python编程入门到精通
    • 二、接口自动化项目实战
    • 三、Web自动化项目实战
    • 四、App自动化项目实战
    • 五、一线大厂简历
    • 六、测试开发DevOps体系
    • 七、常用自动化测试工具
    • 八、JMeter性能测试
    • 九、总结(尾部小惊喜)


前言

全链路压测可以给企业带来什么价值?

1、保障重大活动的系统稳定性
避免公司业务和声誉因为技术故障受到损失,为技术团队赢得业务团队的尊重。

2、精准的容量评估
帮助公司用最低的成本满足业务的性能要求。

3、重大项目重构切换前的性能验证
避免上线切换后持续的性能故障,快速渡过不稳定期。

系统重构是IT部门场景的技术更新的方法,每次上线都需要经历一段阵痛期,期间性能问题、业务故障频发,用户投诉频繁。

通过全链路压测可以在正式切换前完全解决性能问题;配合自动化的用例梳理和人工验证,可以极大程度降低业务故障。两者配合使用,可以快速的渡过不稳定期,提升用户体验。

4、端到端的全链路巡检,第一时间发现故障并快递定位问题
目前常见的监控体系都是通过一些间接的指标来判断是否有故障发生(比如通过CPU利用率、内存使用率、应用的错误日志数量、业务单量和基线的对比等等方式),

间接的方式会产生大量的误报,造成告警麻痹症,真的故障发生后不一定能第一时间引起重视。

通过全链路压测提供的数据隔离功能,可以在线上通过压测流量验证真实的业务接口是否能正常工作。

这种方式可以直接在用户发现业务故障前,相关人员第一时间知晓。配合链路的监测分析功能,快速定位问题应用所在。

该方法在客户真实环境中比传统监控方法平均提前7分钟发现故障,告警正确率是传统告警方式的几十倍。

5、建立公司的性能运营体系,将运动式的性能优化演化为自发的日常性能优化
很多公司都有运动式或者故障驱动的性能优化经历,比如马上要双十一,总监牵头开始性能优化;

有人管的时候性能表现很好,一旦没人牵头做性能优化的事情,又会有很多性能问题被暴露出来。这样的方式通过优化效率很低,投入还大。

6、通过全链路压测的方式,配合目标制定、绩效和工单系统
自动化的全链路压测可以日常化的排查性能瓶颈,通过工单将问题直达负责人,极大的提升性能优化的效率,将性能问题控制在萌芽状态。

如何确定业务核心链路的边界?

如何确定业务核心链路一直是全链路压测前期准备工作的核心,这里需要注意的是:
核心链路是指在精力有限的情况下,必须要保障好的链路,意味着需要投入更多的硬件资源、更多的工程师、出现问题是需要优先处理的。

核心链路不仅要考虑到技术层面,还需要使用自动的架构梳理能力来确定,因为人为梳理费时费力还容易出错。

将详细的依赖数据清洗合并完成后,技术和对应的业务部门共同标记核心的业务功能点,再根据核心功能点和系统的依赖数据来确定最终的核心链路。

一般有符合以下三种情况的,可以考虑确定为核心链路:
链路出现问题会对企业业务造成重大影响的链路,比如对业务造成损害、品牌损害等;

链路出现问题会对用户(如消费者)造成重大影响的链路,比如电商购物APP;

跟公司阶段考核(如KPI)挂钩的业务链路,比如订单团队肯定要保障订单链路的稳定;

另外核心链路其实一直都在变化的,主要体现在:
系统功能一直在增加、修改,对应的系统依赖也必然变化,所以核心链路的边界也是变化的;

核心链路是跟随业务场景变化的,比如在双十一前几年购物地址列表不是核心链路,因为大家双十一的购物习惯是给自己家买;

这两年大家喜欢在双十一期间给父母和朋友买商品,于是切换购物地址就需要加入核心业务功能中。

如何构建全链路压测模型?

由于使用了影子库/表的方式,即使直接使用生产环境压测也并不代表能获得与真实业务完全一致的压测环境,里面还涉及到对压测数据模型的建立.

要保证压测流量和正式流量保持 “一致”,影子库/表与生产环境保持“一致”,这里的“一致”包含几个方面:

1、数据量一致
通常是数据库,搜索索引等数据量的变化会导致响应时间变化的中间件,如果使用影子库来替代正式库,那么需要全量拷贝一份正式库的全量数据来保证压测结果,一些无法直接使用正式库数据的情况。

诸如新业务上线/正式库数据增减变化大/业务增长迅猛需要增加数据量等情况,则需要根据目标数据量以及业务特征构造压测数据来准备数据脚本。

一些只读的链路涉及的库/表,可以根据压测时间/压测目的/压测量等因素评估是否可以直接使用正式库作为压测库。

2、数据分布一致
数据在使用的时候会有频繁访问/操作的热点数据,几乎不会用到的历史归档数据。

两者在mq/缓存/数据库的分布比例会影响接口的读写操作性能,需要根据生产的实际情况构建压测数据模型。

3、数据操作一致
对于缓存,定时处理的一些数据,构造数据的时候要注意数据失效/刷新/定时处理的批次和每批数据处理量的大小。

压测如何构建监控体系?

全链路压测监控体系是由基础监控,应用监控、业务监控三部分构成。

1、基础监控
是指压测产品或者压测应用系统的集群基础性能监控,比如CPU性能、磁盘性能、网络性能等。

2、应用监控
是指从应用层对应用的性能、进行实时监控、分析,比如端到端链路调用节点性能情况。

3、业务监控
是指在站在业务角度的监控,它是由一些列业务指标构成,这些业务指标有特定的业务含义,比如5分钟内交易订单成功率持续为0。

整个全链路压测过程中,开发人员在压力发起之后紧盯基础监控、应用监控、业务监控大盘,任何监控如有异常,第一时间执行对应的紧急预案,确保压测正常运行。

下面是我整理的2023年最全的软件测试工程师学习知识架构体系图

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

只有不停地前行,才能离梦想更近一步。无论遇到多少挫折,永远不要放弃自己的信念和努力。每一次的尝试都是一份积累,每一次的失败都是一次经验教训。只有坚持不懈,才有可能获得成功的喜悦。

生命的意义在于不断追求进步和突破自我,只有拼搏奋斗,才能实现自己的价值和梦想。与其等待成功到来,不如勇敢迎接挑战,用汗水和努力收获属于自己的辉煌人生!

每一次努力都是在为自己的未来铺路,即使现在看不到成果,也要坚持下去。只有拼尽全力,才能获得成功的喜悦。让我们一起加油,迎接更美好的明天!

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

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

相关文章

JavaEE(系列21) -- 传输层协议UDP 和 TCP

目录 1. 应用层和传输层的联系 2. UDP协议 2.1 UDP简介 2.2 UDP格式 2.2.1 目的端口和源端口 2.2.2 报文长度 2.2.3 校验和 3. TCP协议 3.1 TCP简介 3.2 TCP格式 3.2.1 数据偏移和选项(option) 3.2.2 保留项 3.2.3 6位控制位 3.2.4 32位序号和32位确认序号…

华为OD机试真题 Java 实现【滑动窗口】【2023 B卷 100分】,附详细解题思路

一、题目描述 有一个N个整数的数组,和一个长度为M的窗口,窗口从数组内的第一个数开始滑动直到窗口不能滑动为止,每次窗口滑动产生一个窗口和(窗口内所有数和和),求窗口滑动产生的所有窗口和的最大值。 二、输入描述 第一行输入一个正整数N,表示整数个数。(0<N<…

WebGPU 纹理与纹理类型基础 (D3D对纹理的描述比较详细)

纹理与纹理类型&#xff0c;D3D 官方文档描述的比较详细&#xff1a; 介绍 Direct3D 11 纹理 纹理资源是一个结构化的数据集合&#xff0c;用纹素的形式存储。纹素texel代表纹理的最小单位&#xff0c;可以被管线读写。与缓冲区不同&#xff0c;纹理可以在着色器中被纹理采…

中国电源管理芯片上市企业研发投入占比超10%,上海贝岭产品品类持续增加

近年来&#xff0c;中国电源管理芯片市场规模一直保持增长趋势&#xff0c;尽管中国电源管理芯片厂商起步较晚&#xff0c;但是在政策扶持背景下&#xff0c;集成电路国产产品对进口产品的替代效应明显&#xff0c;中国集成电路产品的品质和市场认可度日渐提升&#xff0c;部分…

而立之年——回顾我的渗透测试之路

为什么要转行 因为混得不好。 在成为渗透测试工程师之前&#xff0c;我干过很多工作。由于上学的时候天天打没戏摸鱼啥也不会&#xff0c;我的工作基本上都是体力活。包括但不限于&#xff1a;工厂普工、销售&#xff08;没有干销售的才能&#xff09;、搬运工、摆地摊等&…

JMeter性能测试系列一初识JMeter

1.JMeter介绍 Apache组织的Stefano Mazzocchi是JMeter项目的创始人。编写JMeter最初的目的是为了测试server的性能(后期被Tomcat替代)。随后&#xff0c;JMeter在Apache组织内部开始被其他项目所使用&#xff0c;并最终推广出来&#xff0c;成为独立的软件项目并不断更新&…

sa-token多端登陆实现,PC,APP登陆分别设置token过期时间

sa-token多端登陆实现&#xff0c;PC&#xff0c;APP登陆分别设置token过期时间 Sa-Token 介绍 Sa-Token 是一个轻量级 Java 权限认证框架&#xff0c;主要解决&#xff1a;登录认证、权限认证、单点登录、OAuth2.0、分布式Session会话、微服务网关鉴权 等一系列权限相关问题。…

hive on spark亲自编译,详细教程

hive on spark 进行编译操作 软件 hive 2.3.6 spark 2.0.0版本 hadoop-2.7.6版本 操作流程&#xff1a; hadoop-2.7.6 1、安装hadoop不说了。简单。 spark-2.0.0 2、下载spark-2.0.0的源码. https://archive.apache.org/dist/spark/spark-2.1.0/ 这个下载spark各个版本…

Logback自定义DBAppender保存系统日志到数据库

在系统中采用了spring boot logback&#xff0b;slf4j的日志框架&#xff0c;将系统日志记录到数据库。 相关参考来源&#xff1a; 官方文档-DBAppender Logback输出日志到自定义MySQL数据库&#xff08;重写DBAppender&#xff09; logback日志框架中filter的使用 1. 添加依…

【新版】系统架构设计师 - 系统配置与性能评价

个人总结&#xff0c;仅供参考&#xff0c;欢迎加好友一起讨论 文章目录 架构 - 系统配置与性能评价考点摘要系统性能概述性能指标性能调整阿姆达尔解决方案性能评价方法 架构 - 系统配置与性能评价 考点摘要 性能指标&#xff08;★★&#xff09;阿姆达尔解决方案&#xff…

java SSM 教师管理系统myeclipse开发mysql数据库springMVC模式java编程计算机网页设计

一、源码特点 java SSM 教师管理系统是一套完善的web设计系统&#xff08;系统采用SSM框架进行设计开发&#xff0c;springspringMVCmybatis&#xff09;&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和 数据库&#xff0c;系统主要采用B…

工业深度学习软件 从标注 训练 到测试 再到现场部署

工业深度学习软件 从标注 训练 到测试 再到现场部署 M7000技术规格表 Producer Specification 影像系统 Imaging Sys 适配相机 supported cameras 支持海康&#xff0c;迈德威视&#xff0c;度申2D相机&#xff08;可根据需求增加适配其他厂家相机&#xff09; Support for Hi…

22AP30 H.265 编解码处理器

22AP30 H.265 编解码处理器 主要特点 SVP&#xff08;Smart Vision Processing&#xff09;  图像分析工具推理引擎&#xff08;NNIE&#xff09; − 支持多种图像分析工具 − 1.2Tops运算性能 处理器内核  ARM Cortex A53 四核1.15GHz − 32KB L1 I-Cache&#xff0c;32KB…

小程序页面事件与wxs脚本

文章和代码已经归档至【Github仓库&#xff1a;https://github.com/timerring/front-end-tutorial 】或者公众号【AIShareLab】回复 小程序 也可获取。 文章目录 小程序视图与逻辑页面导航声明式导航编程式导航导航传参 页面事件下拉刷新事件上拉触底事件上拉触底案例 自定义编…

一级建造师执业资格考试--工程管理--速学36记--联想法

第一记&#xff1a;项目管理 第二记&#xff1a;项目管理的核心 第三记&#xff1a;项目总承包方的工作程序 第四记&#xff1a;项目质量控制体系建立 第五记&#xff1a;项目质量控制体系运行 第六记&#xff1a;施工过程质量验收不合格的处理方法 第七记&#xff1a;装配式混…

33:避免遮掩继承而来的名称

我们都知道在下面的代码中&#xff1a; int x;//global变量 void someFunc() {double x;//local变量cin >> x;//读一个新值赋予local变量x } 上述读取数据的语句指涉的是local变量x&#xff0c;而不是global变量x&#xff0c;因为内层作用域的名称会遮掩外围作用域的名…

提示词工程让儿童编程轻而易举

编写长长的代码时常令人头疼。尤其是小朋友&#xff0c;打字不快&#xff0c;但想象力丰富。 现在借助chatgpt。 一切变得超级简单。 1. https://github.com/roocell/gptCozmo 2. https://github.com/Bhood23/CozmoGPT while True:from pyChatGPT import ChatGPTimport speec…

1427205-93-3,Fmoc-Ser(Ac4Manα1-2Ac3Manα1-2Ac3Manα)-OH:一种糖基化蛋白

Fmoc-Ser(Ac4Manα1-2Ac3Manα1-2Ac3Manα)-OH&#xff0c;其CAS号为1427205-93-3&#xff0c;英文名为Fmoc-Ser(Ac4Manα1-2Ac3Manα1-2Ac3Manα)-OH。分子式为C56H67NO30&#xff0c;分子量为1234.13&#xff0c;纯度标准为95%。外形颜色为固体或粉末&#xff0c;包装规格有1…

重命名文件名 | 一键导出表格,让您的文件快速整理归档

您是否因为大量文件命名混乱、找文件困难而感到苦恼&#xff1f;现在有一个好消息&#xff0c;文件批量改名高手帮你解决&#xff01;我们提供最简单、最快捷的方式来统一您的文件命名&#xff0c;无论是照片、文档或是音视频文件&#xff0c;只需一键即可完成重命名。而且我们…

华为OD机试真题 Java 实现【观看文艺汇演问题】【2023 B卷 100分】,附详细解题思路

一、题目描述 为庆祝中国共产党成立100周年&#xff0c;某公园将举行多场文艺汇演&#xff0c;很多演出都是同时进行。 一个人只能同时观看一场演出&#xff0c;且不能迟到早退。由于演出分散在不同的演出场地&#xff0c;所以连续观看的演出最少要有15分钟的时间间隔。 小明…