|
本文将从负载测试的角度,描述了做一次流畅的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秒内处理完请求】
Python多进程实战:用BaoStock高效下载股票历史数据的5个优化技巧
本文详细介绍了使用Python多进程技术通过BaoStock高效下载股票历史数据的5个优化技巧。从理解BaoStock的数据获取机制到进程池配置、智能任务分片、异常处理及性能监控,帮助开发者显著提升数据下载效率,特别适合量化交易领域的数据采集需求。
Unity UI适配核心:Canvas Scaler模式解析与2023版避坑指南
UI适配是游戏与应用开发中的基础挑战,其核心在于确保界面元素在不同屏幕分辨率与设备上保持视觉一致与功能可用。原理上,系统通过坐标转换与缩放计算,将设计稿的布局映射到物理屏幕。技术价值在于提升用户体验的一致性与产品的跨平台兼容性。应用场景广泛覆盖手游、PC端应用及各类交互界面。本文聚焦Unity引擎中的Canvas Scaler组件,深入剖析其Scale With Screen Size等模式的工作原理,并结合锚点设置、安全区域处理等高频搜索热词,提供解决UI错位、拉伸及异形屏适配等常见问题的工程实践方案,帮
jmeter单机最大负载_如何利用JMeter模拟超过 5 万的并发用户
本文将从负载测试的角度,描述了做一次流畅的5万用户并发测试需要做的事情.你可以在本文的结尾部分看到讨论的记录.快速的步骤概要编写你的脚本使用JMeter进行本地测试BlazeMeter沙箱测试使用一个控制台和一个引擎设置Users-per-Engine的数量设置并测试你的集合(1个控制台和10-14 引擎)使用 Master / Slave 特性来达成你的最大CC目标步骤一1 : 编写你的脚本开...
Oracle数据库安装及配置(Oracle19c)
Windows 10安装Oracle 19c教程
如何模拟超过 5 万的并发用户
点击蓝色“程序猿DD”关注我哟加个“星标”,不忘签到哦来源:http://t.cn/ES7KBkW本文将从负载测试的角度,描述了做一次流畅的5万用户并发测试需要做的事情....
MFC+Modbus-Tcp协议实现温湿度传感器采集
本文简单介绍MFC使用-Tcp通信实现系列MODBUSTCP型温湿度传感器采集数据。
Python数据清洗实战:用RapidFuzz搞定模糊匹配(附完整代码示例)
本文详细介绍了在Python数据清洗中,如何利用RapidFuzz库高效解决字符模糊匹配难题。通过实战代码示例,演示了从处理拼写错误、格式不一致的脏数据,到构建实体对齐与记录去重的完整清洗管道,帮助开发者提升数据质量与处理效率。
超赞!JMeter 模拟超过 5 万的并发用户!
知道的越多,不知道的就越多,业余的像一棵小草!编辑:业余草来源:https://www.xttblog.com/?p=5017本文将从负载测试的角度,描述了做一次流畅的5万用户并发测试需...
网络可视媒体的智能计算-胡事民
本文为胡事民教授在山大做报告的笔记,现场见下图: 可视媒体是承载视觉信息的媒体类型,如图像、视频等,它具有网络化、海量和无序涌现等特征。 可视媒体计算的研究意义 可视媒体作为一种信息承载的介质,是用来表达语义信息的。那么就有一种介质与信息之间相互转化的问题。转化方向正反两种,举个栗子说明一下: 1. 可视媒体→→\rightarrow语义信息:比如看到画面,理解其中发生的事件、各主题之...
厉害了!JMeter 模拟超过 5 万的并发用户!
作者:blazemeter来源:oschina.net/translate/how-run-load-test-50k-concurrent-users步骤1 : 编写你的脚本步骤2 :...
Ambari 3.0+BigTop 3.3集群部署实战
Ambari 3.0+BigTop 3.3集群部署
《PLECS仿真与实战:从建模到高端应用》-专栏文件目录
《PLECS仿真与实战:从建模到高端应用》是一本系统介绍PLECS电力电子仿真软件的实用指南。全书共10章,首先介绍软件安装与基础操作,包括RC电路仿真等入门内容;随后深入讲解各类电力电子电路的建模与仿真,涵盖整流、交交变换、直流变换、逆变等电路;最后探讨PWM控制建模和直流调速系统等高端应用。书中配有丰富的示例程序和波形分析方法,附录还包含电力电子器件、代码生成等实用资料。该书适合电力电子领域工程师和学生系统学习电路仿真技术。
敢不敢模拟超过 5 万的并发用户?
程序员的成长之路互联网/程序员/成长/职场关注阅读本文大概需要 6 分钟。来自:http://t.cn/ES7KBkW本文将从负载测试的角度,描述了做一次流畅的 5 万...
WINCC7.3破解文件
WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!
你会不会模拟超过 5 万用户的并发访问?
点击上方“芋道源码”,选择“设为星标”做积极的人,而不是积极废人!源码精品专栏中文详细注释的开源项目RPC 框架 Dubbo 源码解析网络应用框架 Netty 源码解析...
IEM模型,地表粗糙度模拟
利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟
android 蓝牙通讯demo
android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。
jmeter吞吐量越大好还越小好_超赞!JMeter 模拟超过 5 万的并发用户!
知道的越多,不知道的就越多,业余的像一棵小草!编辑:业余草来源:https://www.xttblog.com/?p=5017本文将从负载测试的角度,描述了做一次流畅的5万用户并发测试需要做的事情。你可以在本文的结尾部分看到讨论的记录。快速的步骤概要编写你的脚本使用JMeter进行本地测试BlazeMeter沙箱测试使用一个控制台和一个引擎设置Users-per-Engine的数量设置并...
精雕软件(JDpaint) 5.5 绿色版
精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版
如何模拟超过 5 万用户的并发访问?
来源:http://t.cn/ES7KBkW 本文将从负载测试的角度,描述了做一次流畅的5万用户并发测试需要做的事情. 你可以在本文的结尾部分看到讨论的记录. 快速的步骤概要 编写你的脚本 使用JMeter进行本地测试 BlazeMeter沙箱测试 使用一个控制台和一个引擎设置Users-per-Engine的数量 设置并测试你的集合 (1个...
Jmeter做5万的并发实践
近期在用JMeter进行负载测试的 时候,发现使用单台机器模拟测试超过比如500个进程的并发就有些力不从心或者说不能如实的反应实际情况,在执行的过程中,JMeter自身会自动关闭, 要解决这个问题,则可以使用分布式测试,运行多台机器运行所谓的 Agent 来分担 JMeter自身的压力(这个和LODARUNNER是一样的道理),并借此来获取更大的并发用户数,则需要进行相关的配置参数和文件权限进行一...

4797



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



