【性能测试】稳定性/并发压力测试的TPS计算+5W并发场景设计...

这篇具有很好参考价值的文章主要介绍了【性能测试】稳定性/并发压力测试的TPS计算+5W并发场景设计...。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


前言

1、稳定性测试TPS计算

①普通计算公式:TPS=总请求数 / 总时间按照需求得到基础数据。

在去年第20周,某平台有5万的浏览量
那么总请求数我们可以估算为5万(1次浏览都至少对应1个请求)
总请求数 = 50000请求数

总时间:由于不知道每个请求的具体时间,我们按照普通方法,我们可以按照一天的时间进行计算总时间=1天=124 小时=24 * 3600 秒套入公式可得:TPS = 50000/243600秒= 0.58tps。

结论:按照普通计算方法,我们在测试环境对相同的系统进行性能测试时,每秒能够发送0.58tsps就可以满足线上的需要。

②二八原则计算方法二八原则是指80%的请求在20%的时间内完成

计算公式:TPS=总请求数 80% / (总时间20%)

按照公式进行计算:TPS=50000 0.8请求数 / 2436000.2秒 = 2.3tps

结论:按照二八原则计算,在测试环境我们的TPS只要能达到2.3请求数每秒就能满足线上需要。二八原则的估算结果会比平均值的计算方法更能满足用户需求。

③按照业务运营数据进行计算如xxx消费券发放时间固定开始时间,那个用户将会在活动开始前的30分钟内陆续开始访问xxx首页。

进入消费券主页,在活动开始前5分钟大量访问,活动倒计时10秒和活动开始后2分钟内会有用户不断点击和刷新页面。

根据以往活动数据,活动期间,平台总请求数据未50000,时间持续180分钟。得到总请求=50000,时间=158x60=9480秒。

再根据二八原则,80%用户在20%时间内访问。

得出:tps=50000x80%/9480x20%=40000/1896=21tps/s计算模拟用户峰值业务操作(压力测试)的并发量,根据这些数据统计图,可以得出结论:可以拿21tps/s作为稳定性测试的参考值。

2、并发压力测试tps计算

三个概念:
用户数:数据库中的总用户数。
在线用户数:登录状态的用户数,挂在系统上,但是不会对系统产生压力。
并发用户数:真正产生操作的用户,产生压力之源。

①秒杀活动压测数据计算假如平台总注册用户数有100w,有10w用户约定好同时对某一接口进行访问。

比如1分钟,陆续来访10w用户,那么我们系统并发用户是比实际的10w要小的。

那一个秒杀活动开始时,10w用户在10秒内重复请求多次,平均3次每个人,那么tps=100000/10=10000tps。

表明我们目标的tps应达到10000才能抗住100000用户的同时请求。

②领券活动压测平台注册用户数100w,用10w用户准备抢券,10w人同时在10秒内访问抢券接口。

在过程中每个用户可能会多次点击抢券,估算每个用户点击3次抢券接口。那么,tps=100000*3/10=30000tps,系统的目标tps需达到30000才抗住10w用户的并发访问压力。END、绵薄之力。

3、需求:如何设计一个5W并发量的性能测试场景?

1)确定性能测试工具,性能测试思路

测试工具:Jmeter

并发设计思路:如果被测服务足够快,比如10ms的响应时间,1个线程/秒就是100tps,5万的TPS,就得启动500个JMETER线程。

测试时可以多加20%~50%的线程,连续阶梯加压看TPS完整过程,根据实际情况选择发压服务器配置。

Jmeter能启动多少线程:

①线程数受什么影响?Jmeter是一个Java进程,一个Java进程下的线程数受什么影响?

由堆内存、栈内存以及可用空间(本机的物理内存的剩余内存)决定的。

②以Jmeter 5.1版本为例,在Jmeter.bat文件设置堆内存注意:一般而言,堆的最大值不要超过物理内存的一半,否则容易导致Jmeter运行变慢、卡顿甚至内存溢出,因为Java本身的垃圾回收机制是动态分配内存。

当需要模拟的线程数较大时,就需要根据具体情况采用分布式压测的方式了。

2)确定项目架构,以及环境

①需要确定项目架构,包括不限于:服务器、数据库、中间件,整个链路
②确定测试环境服务器等资源,与生产对比(成比例)

3)确定业务需求
①单接口
②多接口(事务)
③确定业务量:峰值、日业务量、半年/一年的业务量

4)编写性能测试用例、脚本、执行场景
①性能测试用例(模板)

并发,压力测试计算,性能测试,测试工程师,软件测试,压力测试,软件测试,软件测试工程师,性能测试,负载测试,自动化测试,Jmeter性能测试

②性能测试脚本(JMETER)CSV参数化参数提取(正则表达式)断言…
③执行场景

基准测试:1个并发执行5分钟,关注tps、响应时间、运行次数等参数

负载测试:多个并发执行5分钟,关注tps、响应时间、运行次数、服务器的cpu、内存等参数

阶梯测试:通过不断增压,找到拐点。关注tps、响应时间、运行次数、服务器的cpu、内存等参数

疲劳测试:多并发,7*24小时运行,无报错异常。(根据实际情况执行,有的要求持续运行8小时即可)

5)调优、报告

①首先在服务器执行top命令,查看CPU消耗,us、sy哪个消耗的比较多。
②找到消耗cpu的线程,再找到线程调用的方法。
③如果内存消耗比较多,检查日志级别。查看IO状况。
④检查是否存在慢sql。

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

一、Python编程入门到精通

并发,压力测试计算,性能测试,测试工程师,软件测试,压力测试,软件测试,软件测试工程师,性能测试,负载测试,自动化测试,Jmeter性能测试

二、接口自动化项目实战

并发,压力测试计算,性能测试,测试工程师,软件测试,压力测试,软件测试,软件测试工程师,性能测试,负载测试,自动化测试,Jmeter性能测试

三、Web自动化项目实战

并发,压力测试计算,性能测试,测试工程师,软件测试,压力测试,软件测试,软件测试工程师,性能测试,负载测试,自动化测试,Jmeter性能测试

四、App自动化项目实战

并发,压力测试计算,性能测试,测试工程师,软件测试,压力测试,软件测试,软件测试工程师,性能测试,负载测试,自动化测试,Jmeter性能测试

五、一线大厂简历

并发,压力测试计算,性能测试,测试工程师,软件测试,压力测试,软件测试,软件测试工程师,性能测试,负载测试,自动化测试,Jmeter性能测试

六、测试开发DevOps体系

并发,压力测试计算,性能测试,测试工程师,软件测试,压力测试,软件测试,软件测试工程师,性能测试,负载测试,自动化测试,Jmeter性能测试

七、常用自动化测试工具

并发,压力测试计算,性能测试,测试工程师,软件测试,压力测试,软件测试,软件测试工程师,性能测试,负载测试,自动化测试,Jmeter性能测试

八、JMeter性能测试

并发,压力测试计算,性能测试,测试工程师,软件测试,压力测试,软件测试,软件测试工程师,性能测试,负载测试,自动化测试,Jmeter性能测试

九、总结(尾部小惊喜)

只有通过不断地努力和奋斗,才能真正地实现自己的梦想,去创造自己的未来,去改变自己的命运,去赢得自己的成功,最终成为一名真正的赢家。文章来源地址https://www.toymoban.com/news/detail-762418.html

只有通过不断地努力和奋斗,才能真正地实现自己的梦想,去创造自己的未来,去改变自己的命运,去赢得自己的成功,最终成为一名真正的赢家。

只有通过不断地努力和奋斗,才能真正地实现自己的梦想,去创造自己的未来,去改变自己的命运,去赢得自己的成功,最终成为一名真正的赢家。

到了这里,关于【性能测试】稳定性/并发压力测试的TPS计算+5W并发场景设计...的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 加强网站稳定性!学习如何进行高效压力测试!

    1、什么是压力测试? 软件压力测试是一种基本的质量保证行为,它是每个重要软件测试工作的一部分。 软件压力测试的基本思路很简单:不是在常规条件下运行手动或自动测试,而是在计算机数量较少或系统资源匮乏的条件下运行测试。 通常要进行软件压力测试的资源包括

    2024年01月18日
    浏览(53)
  • ADB Monkey压力/稳定性测试祥解-Android测试

    ADB Monkey 是一个在模拟器或设备上运行的程序,可生成伪随机用户事件(例如点击、轻触或手势)流以及很多系统级事件。一般我们会使之用于稳定性测试以及压力测试 我们可以使用 Monkey 以随机且可重复的方式对正在开发的应用进行压力测试。 Monkey 是一个命令行工具,可以

    2024年02月16日
    浏览(44)
  • 服务器稳定性测试-LTP压力测试方法及工具下载

    LTP(LinuxTest Project)是SGI、IBM、OSDL和Bull合作的项目,目的是为开源社区提供一个测试套件,用来验证Linux系统可靠性、健壮性和稳定性。LTP测试套件是测试Linux内核和内核相关特性的工具的集合。 该工具的目的是通过把测试自动化引入到Linux内核测试,提高Linux的内核质量。

    2024年02月02日
    浏览(53)
  • 扒开源安卓性能测试工具moblieperf源码——开发属于你自己的性能稳定性测试工具

    moblieperf由阿里巴巴开源的Android性能测试工具 下载:官方源码地址 mobileperf github 使用: 使用pycharm打开下载的项目 使用只需要修改配置文件 config.conf 即可 运行采集:a.mac、linux 在mobileperf工具根目录下执行sh run.sh ; b.windows 双击run.bat 配置图:(简单使用只需要修改包名和设

    2024年02月19日
    浏览(49)
  • Sui网络的稳定性和高性能

    Sui的最初的协议开发者设计了可扩展的网络,通过水平扩展的方式来保持可负担得起的gas费用。其他区块链与之相比,则使用稀缺性和交易成本来控制网络活动。 Sui主网上线前90天的数据指标证明了这一设计概念,在保持100%正常运行的同时,交易峰值高达每秒5414笔。 在此

    2024年02月13日
    浏览(45)
  • 3分钟了解Android中稳定性测试_手机稳定性测试,大厂软件测试高级多套面试专题整理集合

    先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7 深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前! 因此收集整理了一份《2024年最新软件测试全套学习资料》

    2024年04月26日
    浏览(37)
  • Linux TCP队列的实例详解,提高网络性能和稳定性!

    📚 个人网站:ipengtao.com TCP 队列是 Linux 操作系统中关键的网络管理组件,它们有助于控制和优化网络连接的性能。在这篇文章中,将深入研究 Linux TCP 队列的工作原理、配置选项以及提供丰富的示例代码,以帮助大家更好地理解和管理 TCP 队列。 在理解 TCP 队列之前,需要了

    2024年01月18日
    浏览(46)
  • 腾讯云镜像TencentOS Server操作系统介绍、性能稳定性测评

    腾讯云TencentOS Server镜像是腾讯云推出的Linux操作系统,完全兼容CentOS生态和操作方式,TencentOS Server操作系统为云上运行的应用程序提供稳定、安全和高性能的执行环境,TencentOS可以运行在腾讯云CVM全规格实例上,包括黑石物理服务器2.0。腾讯云服务器网分享TencentOS Server镜像

    2024年02月07日
    浏览(49)
  • 使用monkey工具进行稳定性测试

    首先了解monkey是什么         monkey是Android系统自带一个命令行工具,可以运行在模拟器里或者真实设备中运行。monkey向系统发送伪随机的用户事件流,从而实现对正在开发的应用程序进行压力测试。 monkey包括很多选项,大致分为四大类: 1.基本配置选项,如设置尝试的事

    2024年01月25日
    浏览(57)
  • 对单元测试的思考(稳定性建设)

    2024软件测试面试刷题,这个小程序(永久刷题),靠它快速找到工作了!(刷题APP的天花板) 单测是很常见的技术的名词,但背后的逻辑和原理你是否清楚,让我们一起review一下。 单测是单元测试,主要是 测试一个最小逻辑块 。比如一个函数、一个react、vue 组件。 这里有短

    2024年01月21日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包