|
本文将从负载测试的角度,描述了做一次流畅的5万用户并发测试需要做的事情. 你可以在本文的结尾部分看到讨论的记录. 快速的步骤概要
步骤一1 : 编写你的脚本
开始之前,请确定从JMeter的Apache社区jmeter.apache.org 获得了最新的版本. 你也会要下载这些附加的插件 ,因为它们可以让你的工作更轻松. 有许多方法可以获得脚本:
如果你的脚本是一份记录的结果(像步骤1&2), 请牢记:
步骤2 : 使用JMeter进行本地测试
在1个线程的1个迭代中使用查看结果树要素,调试样本,虚拟样本还有打开的日志查看器(一些JMeter的错误会在里面报告),来调试你的脚本. 遍历所有的场景(包括True 或者 False的回应) 来确保脚本行为确如预期... 在成功使用一个线程测试之后——将其提高到10分钟10到20个线程继续测试:
一旦你准备好了脚本:
步骤3 : BlazeMeter沙箱测试
如果那时你的第一个测试——你应该温习一下 这篇 有关如何在BlazeMeter中创建测试的文章. 将沙箱的测试配置设置成,用户300,1个控制台, 时间50分钟. 对沙箱进行这样的配置让你可以在后台测试你的脚本,并确保上的BlazeMeter的一切都运行完好. 为此,先按下灰色的按钮: 告诉JMeter引擎我想要完全控制! - 来获得对你的测试参数的完全控制 通常你将会遇到的问题:
如果仍然有问题,那就看看错误日志吧(你应该可以把整个日志都下载下来). 一个沙箱的配置可以是这样的:
这可以让你在产能提升期间获得足够多的数据(以防你遇到问题) ,而你将可以对结果进行分析,以确保脚本的执行确如预期. 你应该观察下Waterfall / WebDriver 选项卡来看看请求是否正常,你不应该在这一点上出任何问题(除非你是故意的). 你应该盯着监控选项卡,观察期内存和CPU消耗 - 这对你在步骤4中尝试设置每一个引擎的用户数量. 步骤4 : 使用1个控制台和1个引擎来设置每个引擎用户的数量
现在我们可以肯定脚本能在BlazeMeter中完美运行了——我们需要计算出要多少用户放到一个引擎中. 如果你能用户沙箱中的数据来做这个决定,那就太棒了! 在这里,我会给出一种不用回头去查看沙箱测试数据就能计算出这个数的方法. 设置你的测试配置:
使用一个控制台和一个引擎. 运行测试并(通过监视选项卡)对你的测试引擎进行监视. 如果你的引擎对于75%的CPI使用率和85%的内存使用率都没有达到(一次性的峰值可以忽略) 的话:
如果你的引擎过了75%的CPU使用率或者85%的内存使用率(一次性的峰值可以忽略 :
为安全起见,你可以把每个引擎的线程数降低10%的. 步骤5:安装并测试集群我们现在知道了从一个引擎中我们得到了多少线程,在该章节的最后,我们将会知道一个集群能给我们提供多少用户。 一个集群是指具有一个控制台(仅有一个)和0-14个引擎的逻辑容器。 即使你可以创建一个使用超过14个引擎的测试案例——但实际上是创建了两个集群(你可以注意到控制台的数量增加了),并且克隆了你的测试案例…… 每个集群具有最多14个引擎,是基于BlazeMeter自己本身的测试,以确保控制台可以控制这14台引擎对新建的大量数据处理的压力。 所以在这一步骤中,我们会用步骤4种的测试,并且仅仅修改引擎数量,将其增加到14. 将该测试按照最终测试的全部时长运行。当测试在运行时,打开监听标签,并且检验: 1. 没有一个引擎超过CPU75%的占有率和内存85%占有率的上限; 2. 定位你的控制台标签(你可以通过一次点击Logs Tab->Network Information,查看控制台私有IP地址来找到它的名字)——它不应该达到CPU75%占有率和内存85%占有率的上限。 如果你的控制台达到了该上限——减少引擎数量并重新运行直到控制台在该上限之下。 在这个步骤的最后,你会发现: 1. 每个集群的用户数量; 2. 每个集群的命中率。 查看Aggretate Table中的其他统计信息,并找到本地结果统计图来获得有关你集群吞吐量的更多信息。 步骤 6 : 使用 Master / Slave 特性来达成你的最大CC目标
我们到了最后一步了。 我们知道脚本正在运行,我们也知道一个引擎可以支持多少用户以及一个集群可以支持多少用户。 让我们做一下假设:
因此为了完成这些,我们需要8.3 个集群.. 我们可以用8个12台引擎的集群和一个4太引擎的集群 - 但是像下面这样分散负载应该会更好: 每个集群我们用10台引擎而不是12,那么每个集群可以支持 10*500 = 5K 用户并且我们需要10个集群来支持5万用户。 这样可以得到如下好处:
现在,我们已经准备好创建最终的5万用户级别的Master / Slave测试了:
你的5万用户级别的Master-Slave测试已经准备好了。通过按master上的开始按钮来运行10个测试,每个测试5千用户。 你可以修改任意一个测试(salve或master),让它们来自不同的区域,有不同的脚本/csv/以及其他文件,使用不同的网络模拟器,不同的参数等。 你可以在一个叫“Master load results”的master报告中的一个新tab页中找到生成的聚合结果的报告,你还可以通过打开单个的报告来独立的查看每一个测试结果。 |
相关推荐
使用Jmeter测试系统支持的最大并发登录用户数实战
一、目的 目的:测试系统支持的最大并发登录用户数 完成后结构如下图所示: 二、实施步骤 1、公共部分请求 2、定义变量 3、参数化用户登录信息 4、添加登录请求 其中,参数中值value为参数化变量,来源于CSV Data Set Config中文件,写的是CSV Data Set Config中定义的变量名称。 5、添加断言 6、添加正则表达式提取登录token 提取目的:便于后面其它需要cookie的接口调用。 7、添加调试:调试使用 8、添加集合点 9、运行结果 可
jmeter性能测试2-模拟多用户登录
在录制完测试脚本后,参数都是静态的,如何模拟N个用户登录 1、创建一个CSV文件,里面有两列,用户名和密码。这些用户名和密码要系统里面实际已经存在了。可以创建任意多个。如下: 线程组->添加->配置元件->CSV Data Set Config 创建完后,选择存放用户名密码的csv文件,变量名:username,password。这样就会把csv文件的第一列读取到变量:username,第二列读取到:password 后面所有需要动态赋值的地方,使用${username}
接口测试之Jmeter-(五)模拟用户并发登录
前言: 本次主要介绍使用Jmeter模拟用户并发登录,测试接口性能: (一)读CVS配置文件 (二)读数据库 (一)读配置文件 优点:简单易学,容易上手 缺点:不适用于超大用户量的并发,例如测试1万个用户并发,就需要手动给配置文件写入上万条数据,手疼~ 1. 添加线程组 测试计划右键->线程->线程组 参数解释: 线程数: 并发用户数 Ramp-Up 时间(秒): 启动所有线程所需时长 ...
jemeter压测【2万用户每秒5次请求在30秒内处理完请求】
jemeter压测【2万用户每秒5次请求在30秒内处理完请求】
MediaCreationToolW11:Windows11系统升级与修复利器
在日常使用Windows11系统的过程中,我们可能会遇到一些棘手的问题,比如系统更新时出现异常导致无法成功更新,或者系统本身出现异常需要进行无损修复。此外,当我们的电脑尚未升级到Windows11,而我们又希望进行升级时,一款高效且可靠的工具就显得尤为重要。接下来,MediaCreationToolW11将开始下载Windows11的安装文件,并创建Windows11介质。在“选择你要执行的操作”界面中,选择“ISO文件”。此时,你可以使用你的账户登录系统,并开始使用全新的Windows11系统了。
手把手教你逆向分析某里系bx-ua参数(以225版本为例)
本文详细解析了某里系应用bx-ua参数的逆向工程实战方法,重点拆解其三层加密体系(二进制加密、字符替换和Base64编码)。通过工具链配置和实战案例,帮助开发者掌握逆向分析技巧,适用于合法合规的安全研究和加密技术评估场景。
jmeter单机最大负载_如何利用JMeter模拟超过 5 万的并发用户
本文将从负载测试的角度,描述了做一次流畅的5万用户并发测试需要做的事情.你可以在本文的结尾部分看到讨论的记录.快速的步骤概要编写你的脚本使用JMeter进行本地测试BlazeMeter沙箱测试使用一个控制台和一个引擎设置Users-per-Engine的数量设置并测试你的集合(1个控制台和10-14 引擎)使用 Master / Slave 特性来达成你的最大CC目标步骤一1 : 编写你的脚本开...
Windows平台无人机仿真:从零搭建SITL环境与QGC联调
本文详细指导了在Windows平台上从零搭建无人机软件在环(SITL)仿真环境,并与QGroundControl(QGC)进行联调的完整流程。通过使用Cygwin工具链,开发者可以在没有实体硬件的情况下,模拟运行ArduPilot飞控,并通过MAVLink协议连接QGC地面站进行全功能测试,为无人机软件开发提供了一个安全、经济的虚拟沙盒环境。
如何模拟超过 5 万的并发用户
点击蓝色“程序猿DD”关注我哟加个“星标”,不忘签到哦来源:http://t.cn/ES7KBkW本文将从负载测试的角度,描述了做一次流畅的5万用户并发测试需要做的事情....
深度解析 Android 开发工程师岗位:技术栈、职责与面试全攻略
本文深度剖析Android开发工程师职位要求,从核心技术栈到面试准备进行全面解读。关键点包括:1)掌握Kotlin语言特性和Jetpack组件;2)具备UI开发、性能优化和逆向分析能力;3)理解MVVM架构和Room数据库;4)熟悉常用工具链和开发流程。文章提供了详细的面试题库及解析,涵盖基础概念、UI优化、架构设计等方向,并给出职业发展建议:夯实基础、拓展技术广度、培养工程素养。旨在帮助开发者系统性地准备Android岗位求职,把握移动开发领域的技术趋势。
操作系统实验一到实验九合集(哈工大李治军)
操作系统实验一到实验九合集(哈工大李治军) 有详细代码及注释,程序已在本地测试,均能跑通
超赞!JMeter 模拟超过 5 万的并发用户!
知道的越多,不知道的就越多,业余的像一棵小草!编辑:业余草来源:https://www.xttblog.com/?p=5017本文将从负载测试的角度,描述了做一次流畅的5万用户并发测试需...
Spring AI 实战(11):收官!10 道面试高频题 + 一张脑图带走全系列
本文是Spring AI系列的收官篇,通过知识脑图梳理前10篇内容,提供面试高频题和避坑清单。主要内容包括: 知识脑图:分6层(核心抽象、输入增强、输出控制等)总结Spring AI全栈技术。 10道高频面试题:涵盖ChatClient/ChatModel关系、结构化输出、RAG链路等核心知识点。 避坑清单:列出9条常见问题及解决方案,如向量维度匹配、Advisor顺序等。 技术对比:分析Spring AI、LangChain4j和Spring AI Alibaba的差异与适用场景。 使用建议:提供面试复习
厉害了!JMeter 模拟超过 5 万的并发用户!
作者:blazemeter来源:oschina.net/translate/how-run-load-test-50k-concurrent-users步骤1 : 编写你的脚本步骤2 :...
AXI2APB_bridge 设计
此处研究AHB Slave到 APB master的桥接器,实现接口转化,例如下图之后是参数描述
TMS_WebGMaps_1.9.8.0_Full_Source
TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder
敢不敢模拟超过 5 万的并发用户?
程序员的成长之路互联网/程序员/成长/职场关注阅读本文大概需要 6 分钟。来自:http://t.cn/ES7KBkW本文将从负载测试的角度,描述了做一次流畅的 5 万...
假人有限元模型
假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用
你会不会模拟超过 5 万用户的并发访问?
点击上方“芋道源码”,选择“设为星标”做积极的人,而不是积极废人!源码精品专栏中文详细注释的开源项目RPC 框架 Dubbo 源码解析网络应用框架 Netty 源码解析...
OV9734 DATASHEET,完整规格书
OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等
霍尼韦尔SoftMaster使用说明
霍尼韦尔SoftMaster使用说明
jmeter吞吐量越大好还越小好_超赞!JMeter 模拟超过 5 万的并发用户!
知道的越多,不知道的就越多,业余的像一棵小草!编辑:业余草来源:https://www.xttblog.com/?p=5017本文将从负载测试的角度,描述了做一次流畅的5万用户并发测试需要做的事情。你可以在本文的结尾部分看到讨论的记录。快速的步骤概要编写你的脚本使用JMeter进行本地测试BlazeMeter沙箱测试使用一个控制台和一个引擎设置Users-per-Engine的数量设置并...
如何模拟超过 5 万用户的并发访问?
来源:http://t.cn/ES7KBkW 本文将从负载测试的角度,描述了做一次流畅的5万用户并发测试需要做的事情. 你可以在本文的结尾部分看到讨论的记录. 快速的步骤概要 编写你的脚本 使用JMeter进行本地测试 BlazeMeter沙箱测试 使用一个控制台和一个引擎设置Users-per-Engine的数量 设置并测试你的集合 (1个...
Jmeter做5万的并发实践
近期在用JMeter进行负载测试的 时候,发现使用单台机器模拟测试超过比如500个进程的并发就有些力不从心或者说不能如实的反应实际情况,在执行的过程中,JMeter自身会自动关闭, 要解决这个问题,则可以使用分布式测试,运行多台机器运行所谓的 Agent 来分担 JMeter自身的压力(这个和LODARUNNER是一样的道理),并借此来获取更大的并发用户数,则需要进行相关的配置参数和文件权限进行一...

4797



被折叠的 条评论
为什么被折叠?



