Jmeter基础篇(18)压测过程中的注意事项
一、测试计划设计:
1、场景设计:需要基于实际业务需求设计合理的并发用户模型、事务和思考时间,模拟真实用户的操作行为。
2、目标明确:定义明确的性能指标(如响应时间、吞吐量、并发用户数、错误率等)和性能阈值。
二、资源准备:
1、硬件资源:确保测试机有足够的内存和CPU资源,尤其是在进行大规模分布式测试时,避免因资源不足导致JMeter自身成为瓶颈。
2、JMeter配置优化:调整JVM参数(如-Xms、-Xmx、-XX:MaxMetaspaceSize等),减少垃圾回收的影响,并考虑禁用GUI模式以降低内存消耗。
测试脚本编写:
1、正确性:验证脚本是否准确地模拟了用户交互,包括所有必要的请求头、Cookies、参数等,防止由于参数缺失,导致测试结果失真。
2、参数化与随机化:使用CSV Data Set Config或其他方式实现参数化,避免发送重复的数据导致服务器缓存干扰测试结果。
3、提取与关联:处理动态内容,如session ID、令牌等,并正确关联它们到后续的请求中。
结果收集与监控:
1、监听器配置:选择合适的监听器(如聚合报告、视图结果树、响应时间图等)收集性能指标,方便后续执行结果分析。
2、服务器监控:同步监控服务器端的资源使用情况(如CPU、内存、磁盘I/O、数据库等)以便全面分析系统瓶颈。
分布式测试:
1、环境一致性:确保所有Slave节点上JMeter版本一致,且参数文件、证书等资源均分布到位。
2、数据同步:在分布式测试时,确保参数文件在各个Slave节点上都能正确访问。
3、结果合并:分布式测试结束后,需要正确合并各Slave节点的结果数据。
负载生成策略:
1、逐步加载:不要立即达到最大负载,而是逐渐增加并发用户数以观察系统随负载增长的变化趋势。
2、持续时间:保证测试运行足够长时间以捕获到系统稳定状态的表现。
清理与预处理:
1、清理阶段:测试开始前和结束后应清除可能影响结果的缓存、临时文件等。
2、初始化:对于需要特定初始化操作的场景,确保在测试开始前完成。
报告分析:
1、理解结果:深入分析测试结果,不仅要看平均值,也要关注中位数、90%线、95%线等,识别异常值。
2、非功能因素:考虑到网络延迟、操作系统调度等因素对结果的影响。
安全与权限:
1、授权与认证:处理好登录机制,确保脚本能够正确传递token并模拟用户身份。
2、敏感信息处理:在脚本中妥善管理敏感信息,避免敏感信息泄露。
以上便是在Jmeter性能测试过程中需要注意的一些要点,在具体使用过程中,还应当结合实际项目特点和需求,进行针对性的配置和优化。
博主经验有限,若有不足,欢迎交流,共同改进~
乾坤未定,你我皆是黑马
相关文章:
Jmeter基础篇(18)压测过程中的注意事项
一、测试计划设计: 1、场景设计:需要基于实际业务需求设计合理的并发用户模型、事务和思考时间,模拟真实用户的操作行为。 2、目标明确:定义明确的性能指标(如响应时间、吞吐量、并发用户数、错误率等)和性…...
‘npm‘ 不是内部或外部命令,也不是可运行的程序
npm认识三年了,今天才知道这是node.js的命令 也就是说,想要在cmd里面运行 npm 命令,但就的安装node.js 1. node.js安装 没有安装包的先下载安装包:下载 | Node.js 中文网 (nodejs.cn) 下载之后双击打开,一路安装确…...
使el-table通过操控鼠标滚轮横向滚动
1.创建directive文件夹,里面创建directive.js文件 import Vue from vue;Vue.directive(scroll-x,{inserted:function(el){let domClass el.getAttribute(class)if(domClass.indexOf(el-table)<0){return false}const scrollDiv el;if(scrollDivnull){return fa…...
神经网络深度学习梯度下降算法优化
【神经网络与深度学习】以最通俗易懂的角度解读[梯度下降法及其优化算法],这一篇就足够(很全很详细)_梯度下降在神经网络中的作用及概念-CSDN博客 https://blog.51cto.com/u_15162069/2761936 梯度下降数学原理...
向开发板上移植ip工具:将ip工具移植到开发板系统中
一. 简介 前面一篇文章对 ip工具源码进行了交叉编译,生成了ip工具。文章如下: 向开发板上移植ip工具:交叉编译 ip工具-CSDN博客 本文对生成的 ip工具进行移植,即移植到开发板系统中,并确定是否可用。 二. 向开发板…...
数据关联_3.7
目标 利用匈牙利算法对目标框和检测框进行关联 在这里我们对检测框和跟踪框进行匹配,整个流程是遍历检测框和跟踪框,并进行匹配,匹配成功的将其保留,未成功的将其删除。 def associate_detections_to_trackers(detections, track…...
总结虚函数表机制——c++多态底层原理
前言: 前几天学了多态。 然后过去几天一直在测试多态的底层与机制。今天将多态的机制以及它的本质分享给受多态性质困扰的友友们。 本节内容只涉及多态的原理, 也就是那张虚表的规则,有点偏向底层。 本节不谈语法!不谈语法&#x…...
Contos7 安装 Maven
Contos7 安装 Maven 前言 Maven是一个用于构建和管理Java项目的强大工具。它提供了一种简单且一致的方式来构建、测试和部署项目,同时管理项目依赖关系。Maven基于项目对象模型(Project Object Model,POM),使用XML…...
对适配器模式的理解
目录 一、适配器模式是什么?二、示例【[来源](https://refactoringguru.cn/design-patterns/adapter)】1 第三方依赖 (接口A 数据A)2 客户端3 方钉转圆钉的适配器(数据B) 三、适配器(xxxAdapter࿰…...
纯前端调用本机原生Office实现Web在线编辑Word/Excel/PPT,支持私有化部署
在日常协同办公过程中,一份文件可能需要多次重复修改才能确定,如果你发送给多个人修改后再汇总,这样既效率低又容易出错,这就用到网页版协同办公软件了,不仅方便文件流转还保证不会出错。 但是目前一些在线协同Office…...
双指针的详细教程
双指针算法是一种常用的算法技巧,它通常用于在数组或字符串中进行快速查找、匹配、排序或移动操作。 双指针并非真的用指针实现,一般用两个变量来表示下标(在后面都用指针来表示) 双指针算法使用两个指针在数据结构上进行迭代&a…...
【Review+预测】测试架构演进的曲折之路
文章目录 前言 一、“原始”阶段 二、“小打小闹”阶段 三、“小米加步枪”阶段 四、“摩托化部队”阶段 五、“骑兵连”阶段 六、“海军陆战队”阶段 七、“社区型组织”阶段 前言 近期公司的测试团队需要重新组织安排,本着谦虚谨慎的态度,我从…...
2015年认证杯SPSSPRO杯数学建模D题(第二阶段)城市公共自行车全过程文档及程序
2015年认证杯SPSSPRO杯数学建模 D题 城市公共自行车 原题再现: 城市交通问题直接影响市民的生活和工作。在地形平坦的城市,公共自行车出行系统是一种很好的辅助手段。一般来说,公共自行车出行系统由数据中心、驻车站点、驻车桩、自行车&…...
视频汇聚平台EasyCVR启用图形验证码之后调用login接口的操作方法
视频综合管理平台EasyCVR视频监控系统支持多协议接入、兼容多类型设备,平台可以将区域内所有部署的监控设备进行统一接入与集中汇聚管理,实现对监控区域的实时高清视频监控、录像与存储、设备管理、云台控制、语音对讲、级联共享等,在监控中心…...
【数据结构】非线性结构——二叉树
文章目录 前言1.树型结构1.1树的概念1.2树的特性1.3树的一些性质1.4树的一些表示形式1.5树的应用2.二叉树 2.1 概念2.2 两种特殊的二叉树2.3 二叉树的性质2.4 二叉树的存储2.5 二叉树的基本操作 前言 前面我们都是学的线性结构的数据结构,接下来我们就需要来学习非…...
数据分析POWER BI之power query
1.导入数据 ctrla全选--数据--获取数据--其他来源--来自表格/区域 导入数据,进入编辑模式 2.整理与清除 清除:删除所选列的非打印字符 转换--格式--清除 修整:删除前面和后面的空格 转换---格式---修整(修整后前面后面的空格没有了…...
【c语言】详解操作符(上)
1. 操作符的分类 2. 原码、反码、补码 整数的2进制表示方法有三种,即原码、反码、补码 有符号整数的三种表示方法均有符号位和数值位两部分,2进制序列中,最高位的1位是被当做符号位其余都是数值位。 符号位都是用0表示“正”,用…...
VR全景展示:传统制造业如何保持竞争优势?
在结束不久的两会上,数字化经济和创新技术再度成为了热门话题。我国制造产业链完备,但是目前依旧面临着市场需求不足、成本传导压力加大等因素影响,那么传统制造业该如何保持竞争优势呢? 在制造行业中,VR全景展示的应用…...
2.7、创建列表(List)
概述 列表是一种复杂的容器,当列表项达到一定数量,内容超过屏幕大小时,可以自动提供滚动功能。它适合用于呈现同类数据类型或数据类型集,例如图片和文本。在列表中显示数据集合是许多应用程序中的常见要求(如通讯录、…...
solr functionquery函数查询自定义函数实现
Solr是一个开源的搜索平台,基于Apache Lucene库构建,主要用于提供全文搜索的功能。它被设计为一个高度可靠、可扩展的搜索应用服务器。以下是Solr的一些主要使用场景: 全文搜索:Solr最核心的功能是提供全文搜索,它可以…...
深入SimpleFOC源码:为什么校准编码器时要将磁场固定在270度?一个硬件角度的解读
深入SimpleFOC源码:为什么校准编码器时要将磁场固定在270度?一个硬件角度的解读 当你第一次接触SimpleFOC库的编码器校准代码时,可能会对其中将电角度锁定在270度(_3PI_2)的操作感到困惑。这个看似随意的"魔法数字…...
从点云数据到3D实例分割:手把手带你跑通Mask3D在S3DIS数据集上的完整流程
从点云数据到3D实例分割:手把手带你跑通Mask3D在S3DIS数据集上的完整流程 在三维视觉领域,点云实例分割一直是极具挑战性的任务。想象一下,当你面对一个杂乱无章的办公室场景点云数据时,如何让算法不仅能识别出桌椅、电脑等物体&a…...
K8s混沌工程叛变:随机宕机暴露的职场PUA
在云原生架构席卷软件世界的今天,Kubernetes(K8s)以其强大的编排能力,成为分布式系统稳定运行的基石。随之兴起的混沌工程,则扮演着“压力测试师”的角色,通过主动注入Pod宕机、网络延迟等故障,…...
IP离线库每周更新一次够用吗?企业风控建议多久更新?
在风控体系中,IP数据的时效性直接决定了拦截效果。当攻击者使用秒拨IP或住宅代理发起攻击时,IP地址的轮换速度可以达到分钟级。如果依赖的IP库更新周期过长,就等于在防御上留下了数天的空窗期。 周更不够用。秒拨IP平均存活3-5分钟ÿ…...
Vue表单生成器深度解析:3个维度重塑你的表单开发体验
Vue表单生成器深度解析:3个维度重塑你的表单开发体验 【免费下载链接】vue-form-generator :clipboard: A schema-based form generator component for Vue.js 项目地址: https://gitcode.com/gh_mirrors/vu/vue-form-generator 在当今快速迭代的前端开发中&…...
C++ 打破常识:无需传参,真正实现「调用时才触发 static_assert」
文章目录前言一、传统写法的死胡同二、核心突破思路三、可直接验证的终极代码效果承诺:报错效果:四、关键细节解释(最重要的部分)1. template<int 0> 到底是什么?2. 为什么不用参数也能实现延迟?3. …...
Hermes性能优化:如何提高邮件生成速度和降低资源消耗
Hermes性能优化:如何提高邮件生成速度和降低资源消耗 【免费下载链接】hermes Golang package that generates clean, responsive HTML e-mails for sending transactional mail 项目地址: https://gitcode.com/gh_mirrors/he/hermes Hermes是一个Golang包&a…...
【黑金云课堂笔记】第一~二期FPGA知识点总结
知识卡片一:【FPGA 基础篇】开启硬件编程之门FPGA 的本质: FPGA(现场可编程门阵列)并非在运行软件程序,而是在构建电路本身。用户可以通过 Verilog/VHDL 等硬件描述语言,在芯片出厂后随时重新配置其内部逻辑…...
Qwen3.5-9B教程:Gradio队列机制+并发请求限流配置方法
Qwen3.5-9B教程:Gradio队列机制并发请求限流配置方法 1. 模型概述与环境准备 Qwen3.5-9B是一款拥有90亿参数的开源大语言模型,具备强大的逻辑推理、代码生成和多轮对话能力。其多模态变体Qwen3.5-9B-VL支持图文输入,并能处理长达128K token…...
茉莉花插件:5分钟快速上手Zotero中文文献智能管理终极指南
茉莉花插件:5分钟快速上手Zotero中文文献智能管理终极指南 【免费下载链接】jasminum A Zotero add-on to retrive CNKI meta data. 一个简单的Zotero 插件,用于识别中文元数据 项目地址: https://gitcode.com/gh_mirrors/ja/jasminum 还在为处理…...
