测试架构师如何落地性能测试方案(一)

背景描述:

最近刚接手一个新项目,在最开始的时候要求对这个项目做性能测试,产品经理也给不出性能需求,只因为这个项目是电商项目,可能会有高并发,秒杀的场景,所以产品经理要求我们对这个项目必须做性能测试,又因为这个项目是一个新项目,所以大家都没有重视起来

过了一段时间,当领导问到这个项目的性能测试方案如何落地的时候,大家都懵了,都不知道该怎么办。然后测试组长就把目光投向了我-----整个测试团队唯一的测试架构师,在这个时候,我就想起了还有研发架构师,于是我就找到了研发架构师,一起沟通这个项目的性能需求!!!

问题来了.......

因为最开始的时候,产品经理也给不出性能需求。要想在项目最开始的时候给出性能测试方案,就必须要有对应的性能需求。但是现在这个项目只是刚开始,还没有一些产品文档,所以产品经理也给不出来性能需求

只能知道大概的产品方向,以及大概的功能模块有哪些,所以在这个时候,只能靠架构师和产品经理在一起进行沟通。

我是如何解决问题的.......

由于做的类似于一个电商APP,是前后端分离的项目,所以市场上有很多竞品可以拿来分析,于是就我就主持召开了一个会议,会议主题:“如何落低性能测试”,参会人员:产品经理,项目经理,研发架构师、还有研发组长。但是在这个会议的进行过程中,发现大家并不是很愿意讨论性能测试,而是比较热衷于产品需求和对应的性能需求,因为没有产品需求和性能需求的话,就谈不到性能测试这一步。

这里再补充一点:其实我们平时在项目里面做性能测试的话,也就有三种情况会做性能测试:

1,就是我们要对当前的系统做一个摸底,也就是系统性能兜底,看一下当前的系统能够容纳多少并发。

2,就是提出来具体的性能需求,比如我要实现3000人同时做什么什么事情,满足1000并发,系统响应不超过2秒......

3,就是当系统出现性能问题了,我们需要进行性能排查和性能测试。

好像发现了救命稻草.........

因为这是一个新项目,所以暂时就不会出现性能问题,主要还是要有性能需求才能够的性能测试,但是这个性能需求没有人能够给出,产品经理给不出来,项目经理也给不出来,研发更给不出来。

所以在这个时候,我们的重点是讨论性能需求,在会议讨论过程中发现,我们目前评估竞争产品,也就是竞品分析,发现竞品类APP需要至少满足1000TPS,系统响应不超过2秒.......

发现了新问题.......

综合对比了几款竞品APP,发现:某一款竞品APP在第一个版本要满足 1000TPS的并发能力,但是现在这个1000TPS的并发能力应该如何设计,在这个时候就是另一个问题了,而且这个性能需求也是大家通过竞品分析得来的,并不能算真正的性能需求,只能算暂时的一个伪需求。

目前大家的会议讨论的重点就是如何设计一个能够满足1000TPS的性能架构,等以后产品真正上线使用过程中再逐步调整优化需求!!!

在满足1000TPS的性能架构的基础之上完成的第一个测试版本,性能测试人员才能够对系统进行测试,查看系统到底能否达到1000的TPS,整个会议的目的都已经达到了,所以说,剩下的重点就是如何设计一套架构能够满足当前的1000TPS的业务。

当然这个工作并不是一个测试人员来做的,也不是简单的研发人员来做的,而是由系统架构师来做。

于是到最后,这个任务就交给了系统架构师,也就是Java架构师,当然测试架构师也要参与其中,但是目前的系统架构师一时间也给不出来具体的架构方案,因为,如果给出来1000TPS的架构方案,就必须在敲代码之前能够设计出来一套具体的架构方案。

重点难点来了.........

在敲代码之前,能够评估能够给出一套具体的架构方案,并且评估出该方案的吞吐量,TPS不小于1000,这个工作量只能由系统架构师来做,经过一段时间和系统架构师的沟通发现。

这个事情只能凭架构师个人的经验来设计了,各种框架、中间件设计、数据库缓存、微服务架构,表结构,负载均衡策略以及每个中间件能满足多少并发。

测试前移........

这些都是要凭架构师的个人经验了,毕竟还没有敲代码,等整个架构设计好了之后才开始敲代码!在研发敲代码的时候,测试人员就可以设计开展性能测试相关的工作了!等整个性能测试环境搞定之后,我们就可以真正执行具体的性能测试了!那如果说,当性能环境都搞定了之后,代码也都完成的差不多了,数据也都造的差不多了,这个时候才开始评估性能方案都已经晚了,所以说一定要在敲代码之前就要评估出系统的吞吐量TPS。

当然这个对架构师的技术经验要求都很高,一般人是做不好的,只有系统架构师才能做好,而且是经验非常丰富的系统架构师也不一定能够保证敲代码之前设计的这套方案就能够满足当时的性能评估,所以还是要等性能测试的时候看真正的结果。


以下是我收集到的比较好的学习教程资源,虽然不是什么很值钱的东西,如果你刚好需要,可以评论区,留言【777】直接拿走就好了

各位想获取资料的朋友请点赞 + 评论 + 收藏,三连!

三连之后我会在评论区挨个私信发给你们~

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

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

相关文章

深入浅出 栈和队列(附加循环队列、双端队列)

栈和队列 一、栈 概念与特性二、Stack 集合类及模拟实现1、Java集合中的 Stack2、Stack 模拟实现 三、栈、虚拟机栈、栈帧有什么区别?四、队列 概念与特性五、Queue集合类及模拟实现1、Queue的底层结构(1)顺序结构(2)链…

echarts3d柱状图

//画立方体三个面 const CubeLeft echarts.graphic.extendShape({shape: {x: 0,y: 0,width: 9.5, //柱状图宽zWidth: 4, //阴影折角宽zHeight: 3, //阴影折角高},buildPath: function (ctx, shape) {const api shape.api;const xAxisPoint api.coord([shape.xValue, 0]);con…

c++ 有元

友元分为两部分内容 友元函数友元类 友元函数 问题&#xff1a;当我们尝试去重载operator<<&#xff0c;然后发现没办法将operator<<重载成成员函数。因为cout的输出流对象和隐含的this指针在抢占第一个参数的位置。this指针默认是第一个参数也就是左操作 数了。…

AutoDL服务器的镜像版本太高,配置python3.7 tensorflow1.15版本的框架的步骤

1.选择一个实例&#xff0c;进入后端界面 2. 更新bashrc中的环境变量 conda init bash && source /root/.bashrc查看虚拟环境 conda info --envs可以看到此时有一个base的虚拟环境 但是它的python版本为3.8.10&#xff0c;无法安装tensorflow1.15,所以我们要创建一个…

基于Java+SpringBoot+Vue的网上图书商城设计与实现(源码+LW+部署文档等)

博主介绍&#xff1a; 大家好&#xff0c;我是一名在Java圈混迹十余年的程序员&#xff0c;精通Java编程语言&#xff0c;同时也熟练掌握微信小程序、Python和Android等技术&#xff0c;能够为大家提供全方位的技术支持和交流。 我擅长在JavaWeb、SSH、SSM、SpringBoot等框架…

[保研/考研机试] KY85 二叉树 北京大学复试上机题 C++实现

题目链接&#xff1a; 二叉树https://www.nowcoder.com/share/jump/437195121692000296981 描述 如上所示&#xff0c;由正整数1&#xff0c;2&#xff0c;3……组成了一颗特殊二叉树。我们已知这个二叉树的最后一个结点是n。现在的问题是&#xff0c;结点m所在的子树中一共包…

k8s 自身原理 2

前面我们说到 K8S 的基本原理和涉及的四大组件&#xff0c;分享了前两个组件 etcd 和 ApiServer 这一次我们接着分享一波&#xff1a; 调度器 scheduler控制器管理器 controller manager 调度器 scheduler 调度器&#xff0c;见名知意&#xff0c;用于调度 k8s 资源的&…

cmake-ibmtpm1682编译

1、error Ossl library is using different radix 异常解决 RADIX_BITS由 64改成32 --whole-archive CMakeFiles\ibm-tpm-my.dir/objects.a -Wl, --no-whole-archive CMakeFiles\ibm-tpm-my.dir\linklibs.rsp CMake中的 --whole-archive以及–no-whole-archive两者都是编译器…

新能源汽车需要检测哪些项目

截至2022年底&#xff0c;中国新能源车保有量达1310万辆&#xff0c;其中纯电动汽车保有量1045万辆。为把好新能源汽车安全关&#xff0c;我国新能源汽车除了完善的强制性产品认证型式实验外&#xff0c;还建立了“车企-地方-国家”逐级上报的三级监管体系实行新能源汽车全生命…

opencv 基础54-利用形状场景算法比较轮廓-cv2.createShapeContextDistanceExtractor()

注意&#xff1a;新版本的opencv 4 已经没有这个函数 cv2.createShapeContextDistanceExtractor() 形状场景算法是一种用于比较轮廓或形状的方法。这种算法通常用于计算两个形状之间的相似性或差异性&#xff0c;以及找到最佳的匹配方式。 下面是一种基本的比较轮廓的流程&…

这所985非常难考,却无数人趋之若鹜!

一、学校及专业介绍 厦门大学&#xff08;Xiamen University&#xff09;&#xff0c;简称厦大&#xff08;XMU&#xff09;&#xff0c;位于福建省厦门市&#xff0c;位列国家“双一流”、“985工程”、“211工程”重点建设高校。 1.1 招生情况 厦门大学初试考847信号与系统…

LeetCode面向运气之Javascript—第27题-移除元素-98.93%

LeetCode第27题-移除元素 题目要求 一个数组nums和一个值val&#xff0c;你需要原地移除所有数值等于val的元素&#xff0c;并返回移除后数组的新长度 举例 输入&#xff1a;nums [3,2,2,3], val 3 输出&#xff1a;2, nums [2,2] 输入&#xff1a;nums [0,1,2,2,3,0,4,2…

Spring-2-深入理解Spring 注解依赖注入(DI):简化Java应用程序开发

今日目标 掌握纯注解开发依赖注入(DI)模式 学习使用纯注解进行第三方Bean注入 1 注解开发依赖注入(DI)【重点】 问题导入 思考:如何使用注解方式将Bean对象注入到类中 1.1 使用Autowired注解开启自动装配模式&#xff08;按类型&#xff09; Service public class StudentS…

vue3 使用@vue-office/excel预览本地excel文件 demo

vue3 使用vue-office/excel预览excel文件 demo 显示如下&#xff1a; npm地址&#xff1a;https://www.npmjs.com/package/vue-office/excel vue-office还有pdf和docx&#xff0c;按需下载对应插件 npm install vue-office/excel vue-demivue代码如下 app.vue <templ…

【Leetcode】79.单词搜索

一、题目 1、题目描述 给定一个 m x n 二维字符网格 board 和一个字符串单词 word 。如果 word 存在于网格中,返回 true ;否则,返回 false 。 单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中“相邻”单元格是那些水平相邻或垂直相邻的单元格。同一个单元格内…

小白如何轻松制作产品帮助中心页面?

产品帮助中心是每个网站/产品必不可少的页面&#xff0c;产品帮助中心页面成为了企业提供客户支持和解决方案的重要组成部分。对于初次接触建立帮助中心页面的小白来说&#xff0c;也许会感到一些困惑和无从下手。本文将为小白介绍如何轻松制作产品帮助中心页面&#xff0c;帮助…

JZ38 字符串的排列

题目地址&#xff1a;字符串的排列_牛客题霸_牛客网 题目回顾&#xff1a; 解题思路&#xff1a; 这里用到了全排列和剪枝。 首先我们来说全排列&#xff0c;设置一个vis数组来记录当期元素是否被使用过&#xff0c;然后dfs遍历整个数组&#xff0c;列出所有符合条件的路径就是…

你选的产品真的适合做独立站吗?用这5种方法测试一下吧!

跨境电商行业圈里流行一句话“七分靠选品&#xff0c;三分靠运营”&#xff0c;一个独立站新手卖家要想在跨境电商这个庞大的行业体系里分得一块蛋糕&#xff0c;不深入了解一些选品的技巧恐怕很难做出成绩来。 很多独立站赚不到钱的原因在于选品上的失败&#xff0c;如果你的…

汽车制造业上下游协作时 外发数据如何防泄露?

数据文件是制造业企业的核心竞争力&#xff0c;一旦发生数据外泄&#xff0c;就会给企业造成经济损失&#xff0c;严重的&#xff0c;可能会带来知识产权剽窃损害、名誉伤害等。汽车制造业&#xff0c;会涉及到重要的汽车设计图纸&#xff0c;像小米发送汽车设计图纸外泄事件并…

计算机组成原理-笔记-汇总

&#x1f4da; 前言 本人在备考408&#xff0c;王道讲得的确不错&#xff0c;本人之前也看过哈工大【刘宏伟老师】的课&#xff0c;两者对比下来。 王道——更加基础&#xff0c;对小白更加友好哈工大——偏实践偏硬件&#xff08;会将更多的代码硬件设计&#xff09; PS&#…