JAVA开发测试(jmeter如何测试性能与估算)

news2024/11/15 10:49:05

对C的业务网站或应用,进行性能测试来评估使用服务器情况是必不可少的一项工作。

一、测试工具:

Apache JMeter 可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能,是Apache组织开发的基于Java的压力测试工具Jmeter 可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能。通过使用jmeter,企业能最大限度地缩短测试时间,优化性能和加速应用系统的发布周期。

如我们对一台署了电商应用的服务器部进行测试配置如下:

服务器类型:ECS弹性云服务器

服务器CPU:4C(4核)

服务器内存:16G

服务器存储:50G(系统盘)+500G(存储)

服务器数量:1台

备注  说明:ecs.g7.xlarge+5M带宽

经验总结的数据规则:

1、二八法则(20%的时间完成80%的事情):

也叫帕累托法则,指电商行业中,20%的变量将产生80%的效果,电商平台常用来计算用户访问量和时间的分配情况,即平台80%访问,集中在20%的时间完成。

2、下单转换率(5%)

电商转化率=交易次数/访问数,目前行业普遍维持在5%的转化率。

3、黄金时段:(早10点到晚10点)

根据淘宝发布的统计数据,交易的‘黄金时段’为10:00-12:00、15:00-17:00、20:00-22:00;

根据京东新品发布时间段统计数据,新品发布‘黄金时段’为10:00-11:00、15:00-17:00。

结合以往电商项目,交易多发生在10:00-22:00(特殊活动日除外)。

二、压测前准备工作:

在进行性能测试之前,需要做一些必须的准备工作,主要包括:

  1. 测试功能点全部通过功能测试,确保功能上没有问题;
  2. 软硬件环境搭建就绪;
  3. 数据库备份;
  4. 对于每一个测试功能点,都要事先录制好相应的测试脚本,包括参数化,准备好测试数据,并且调试好,脚本能够成功的回放,保证在测试的时候能够顺利的运行;
  5. 测试数据准备就绪;
  6. 系统监控准备就绪;
  7. 测试结果验证方法准备就绪。

三、测试方法:

利用测试工具Jmeter编写脚本,模拟用户并发执行典型业务场景,记录事务响应时间、用户并发数、TPS等数据,并对应用服务器系统资源利用情况进行监控。

模仿虚拟用户:

虚拟用户:在本次测试中,一个虚拟用户即是一个线程。线程每次从流程图开始时执行,若未遇到异常则运行至结束,然后又从开始时运行,如此往复,直至手动停止或者运行时间结束。在执行脚本过程中,若出现异常,则跳至结束,并重新开始。

关键性指标:

迭代:一个虚拟用户执行完一次脚本即称之为一次迭代。

ART:事物平均响应时间。

TPS:系统每秒能够处理的事务数。

如测试一个查询用户详情信息的业务流程:

执行该脚本前,需先准备一批平台会员信息;

每次迭代使用的会员信息是顺序获取的。

按照上面的例子依次测试系统中场景得出性能数据即可。

四、测试结论

一般的结论

根据电商平台常用二八法则,即80%的业务集中发生在20%的时间段。用户购物行为普遍发生在每一天的10个小时(12:00-22:00),

9.08次/s*3600s/h*2h≈26万次

根据28定律换算:26万次/0.8≈6.54万次/天

即:每天可支持6.54万次的三方平台调用能力。

扩容建议就两项:

  • 纵向扩容:如服务器及云服务CPU数量增加、内存增加、硬盘存储增加;
  • 横向扩展:应用服务器数量增加,云服务数量增加。

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

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

相关文章

CCF-CSP真题《202212-1 现值计算》思路+python满分题解

想查看其他题的真题及题解的同学可以前往查看:CCF-CSP真题附题解大全 试题编号:202212-1试题名称:现值计算时间限制:1.0s内存限制:512.0MB问题描述: 问题描述 评估一个长期项目的投资收益,资金的…

中点BH算法对任意斜率的直线扫描转换方法

作者:非妃是公主 专栏:《计算机图形学》 博客地址:https://blog.csdn.net/myf_666 个性签:顺境不惰,逆境不馁,以心制境,万事可成。——曾国藩 文章目录专栏推荐专栏系列文章序一、算法原理二、…

六“元”数智增长模型,企业元宇宙时代的经营新范式

摘要:在中国传统哲学里,“元”表示最基本的、最根本的东西;在企业管理经营中,将“元”解释为企业的核心竞争力或者基础能力;元宇宙下,“元”就代表数智化下的新场景,来支撑企业的各种业务创新。 一、元宇宙下的“元” …

分享IDEA通过插件 【一键自动生成】 在线api接口文档

开发写代码已经很辛苦,相信每个开发人员都不想写接口文档,但是不写又不行。尤其现在开发的项目偏向于前后端分离,在没有接口的情况下,前后端很难对接联调,测试也无法很好的测试。现在IDEA的插件仓库里有款插件&#xf…

qt 内存泄漏处理办法

windows 版本windows msvc版本可以使用vld检测可以得到内存泄漏点的调用堆栈,如果可以的话,还可以得到其所在文件及行号;可以得到泄露内存的完整数据;可以设置内存泄露报告的级别。缺点:1.只针对 Visual C &#xff08…

VUE -- defineExpose

defineExpose定义demo定义 defineExpose定义:用于组件通信中父级组件调用操作子组建方法和响应式属性参数能力 在使用definExpose前需要了解两个拷贝对象函数 对象copy:shallowReactive 与 数据 copy:shallowRef 这两个都是vue包里面的 简…

图片文字识别OCR调研-中文

直接看效果对比 tesseract-ocr 该识别引擎最新版本tesseract4添加了支持神经网络(LSTM)的,该引擎专注于线条识别, 同时也保留了Tesseract OCR 引擎,该引擎通过识别字符模式来工作。 我们需求端的后台语言是go&#x…

时尚高级实用,零跑C01满足各种用车需求

零跑C01在新能源车市场上销量可观且口碑较好,为什么消费者会相中这个国产车全域自主研发的新能源车呢?下面的介绍会给出答案。就其外观而言,零跑C01的外观定位于中大型轿车,在外观设计上充分考虑到美学观念。零跑给出了七个车身颜…

扬帆优配|日均客运量恢复,民航业加速复苏,外资买入2股超亿元

春运民航客运量康复至疫情前七成。 2月16日,民航局举行2月例行新闻发布会。会上介绍,自1月7日至2月15日,春运40天,民航运送旅客5523万人次,日均客运量138万人次,同比去年春运添加39%,康复至2019…

Lesson5.1---Python 之 NumPy 简介和创建数组

一、NumPy 简介 NumPy(Numerical Python)是 Python 的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵,比 Python 自身的嵌套列表(nested list structure)结构要高效的多(该结构也可以用来表示…

【贰】嵌入式系统的分类

随手拍拍💁‍♂️📷 日期: 2022.08.31 地点: 杭州 介绍: 2022.08.31下午一点,在闷热的学校里实在是待不下去了,跑到了门口的钱塘江边散了一会儿步🚶正值盛夏,八月即将完结,日子越过越快&#x1…

FPGA MAX 10 10M50系列10M50DAF484C8G/10M50DAF484C7G/10M50DCF484C7G规格

介绍MAX 10器件是单芯片、非易失性低成本可编程逻辑器件(pld),用于集成最优的系统组件集。MAX 10设备的亮点包括:内部存储双配置闪存用户闪存即时支持集成模数转换器(adc)支持Nios II单芯片软核处理器MAX 10设备是系统管理、I/O扩展、通信控制平面、工业、汽车和消费…

ant design vue 组件中经常会出现 label过长被盖住的情况

ant design vue 组件中经常会出现 label过长被盖住的情况,我还特地找了解决方法:当过长时让他换行显示,还写了一篇博客记录,今天同样是写代码,但并没有做特殊的设置,结果却出乎意料的正常,过长自…

2023美赛A题:收干旱影响的植物群落(MCM)思路Python代码

赛题目的:分析干旱程度与植物群落中物种数量的关系赛题解读&解题思路链接: (1)这道题的难点是寻找数据,如果能找到干旱程度的适应性代表的指标以及对应植物群落物种的数量,那这道题基本上是迎刃而解,只需要简单去搭建一个预测模型即可仿真 (2)目标是对马萨马拉这个…

基于dll注入 读取任务管理器中指定进程的详细信息

关键字 注入dll,遍历ListView 技术调研背景 QA测试程序时,往往需要关注进程的性能指标,比如:CPU,GPU,内存,显存。最终根据各个采样数据,生成基于时间轴的状态表(类似任…

37.网络结构与模型压缩、加速-4

37.1 减少网络碎片化程度(分支数量) 模型中分支数量越少,模型速度越快 此结论主要是由实验结果所得。 以下为网络分支数和各分支包含的卷积数目对神经网络速度的影响。 实验中使用的基本网络结构,分别将它们重复10次,然后进行实验。实验结果如下: 由实验结果可知,随着网络…

【JVM与性能调优】JVM常用指令之Javap详解

一、JavaP 命令是什么? JavaP 命令是 Java 语言的一种工具 ,Java中一种反汇编器! 二、JavaP 命令的作用 帮助开发者深入了解 Java 编译器的机制显示字节代码含义显示编译类文件中的可访问功能和数据查看Java类文件中类和接口的内部结构显示…

Mybatis执行完新增操作后,对象的ID主键被修改了的原因【mybatis-spring-boot-starter开源项目的贡献者解答】

Mybatis执行完新增操作后,对象的Id主键被修改了的原因问题由来问题分析解决方案感谢问题由来 首先说下背景,项目的依赖是:mybatis-spring-boot-starter:1.3.2 进行新增操作后,一般来说入库就算完事了,但是除…

基础篇:04-Eureka服务注册与发现

目录 1.Eureka工程搭建启动 打开Idea-Service控制台 2.user-service接入并启动 2.1 引入pom依赖 2.2 更新配置文件 2.3 启动并查看Eureka信息 2.3 复制模拟多实例部署 3.order-service接入并启动 4.常见问题及解决方案 5.总结 6.推荐阅读资料 因前面提到Netflix相关…

webpack -- 无法将“webpack”项识别为 cmdlet

webpack : 无法将“webpack”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。 1.检测是否是版本太高而只能使用脚手架进行打包 webpack4.x的打包已经不能用webpack 文件a …