Jmeter常见问题和工作中遇到的问题解决方法汇总
一、标题Jmeter常见问题解决
1.1 Jmeter如何针对https协议进行接口测试?
解决方法: 协议更改为:https,端口号更改为443;Jmeter默认的是:http协议,端口号是:80
1.2 Jmeter如何解决默认中文显示?
解决方法:
通过编辑jmeter目录/bin/jmeter.porperties文件,将其language的值更改为:zh_CN,然后保存,重启Jmeter即可。
1.3 Jmeter如何解决Sampler响应结果乱码?
原因:jmeter默认是ISO-8859-1编码,可以通过修改:jmeter.properties文件
解决方法:
将sampleresult.default.encoding=ISO-8859-1,将其修改为sampleresult.default.encoding=UTF-8;保存后,重新启动Jmeter即可。
1.4 Jmeter历史版本在哪里下载?
Jmeter历史版本下载: http://archive.apache.org/dist/jmeter/binaries/
1.5 Jmeter插件本在哪里下载?
Jmeter插件下载地址: https://jmeter-plugins.org/downloads/all/
对于JMeterPlugins-Extras-1.4.0.zip 和 JMeterPlugins-Standard-1.4.0.zip
解压这两个.zip包,分别取出\lib\ext目录下的,然后重启Jmeter
1.6 JMeter中引入外部的JAR包给bean shell 使用?
方法1:在测试计划中,通过浏览按钮,将需要导入的jar包引入
方法2:直接将需要引用的jar包放置到JMeter的lib目录,或者ext目录下
方法3:设置插件依赖路径,此时需要在jmeter.properties中添加依赖的路径,在dependencies中添加需要添加的jar包(推荐)
1.7 Jmeter进行http协议接口测试Json格式时注意事项
需要添加HTTP信息头信息:Content-Type=application/json ,否则会报错;
1.8 Jmeter 非GUI或GUI时生成不了html报告的原因?
jmeter.save.saveservice.output_format=xml,将该xml值更改为:csv即可;在使用上方的命令即可生成html报告,在生成testResult的文件夹,文件夹中有一个index.html文件,在浏览器中可以直接点开
二、标题根据在之前的压测过程碰到的问题,今天稍微总结总结,以后方便自己查找。
问题一
单台Mac进行压测时候,压测客户端Jmeter启动超过2000个线程,Jmeter报OOM错误,如何解决?
解答:单台Mac配置内存为8G,可用内存最大为3.5G左右,启动一个线程将近需要1M内存,2000个线程,需要大概2G左右的内存;然后启动Jmeter,本身需要将近400M的内存,接着在运行过程中,Jmeter又使用了Respoonse
Time、TPS、Thread等等的计数器也会占用额外内存;最后,Jmeter运行不到2分钟,导致Jmeter闪退,然后Mac
OS重启,原因就是系统出现了Out Of Memory的错误。
建议:单台压测机器,启动线程不超过1000个,推荐500个左右,这样客户端性能比较好;如果要压测超过1000个线程,建议分成2台Mac机器进行压测,超过2000个,分成3台Mac机器压测,以此类推。
问题二
使用断言,是否特别消耗系统资源?
解答:使用Response Assertion 和Json
Assertion这两种断言方式,不是太占用系统CPU资源;但是如果使用正则表达式进行断言,就会对系统的CPU有一定的消耗。这个好像使用SQL语句一样,使用Like进行查找结果,是模糊匹配,所以需要额外资源进行计算;如果使用x=y的条件,查询速度就会快很多。
问题三
当压测线程500左右,没有使用集合点,TPS一直无法上到200以上,并且Error%率很低,不超过1%的错误率?
解答:Jmeter在脚本中,使用集合点-synchronizing
point,计算TPS的算法跟脚本中没有使用集合点的TPS算法有区别;所以,当脚本中使用集合点,那么被集合点压测的接口TPS就会比没有被集合点压测接口的TPS高;所以,这个是设置的问题,不是服务器或者应用的问题。
问题四
页面性能需要压测吗?场景:多人反复登陆/退出/抢红包/多人提问/多人弹幕…
解答:其实页面的请求也是通过前端接口传递到后端接口,然后通过后端的接口拿到需要的数据,最后传给前端,让数据在前端页面展示;如果后端的接口响应慢,就必然会导致前端展示数据的速度慢;如果后端的响应速度快,前端的展示数据的速度仍然很慢,那么就跟客户端的机器CPU/内存/浏览器等配置相关,需要单独分析,不能一概而论。
建议:这个问题,一般都是前端的开发工程师提出来的,其实,前端的逻辑相对简单,主要是数据展示功能,数据的加工工程,都是放在后端来完成的;正常情况下,如果后端的接口响应很多,前端的接口响应速度应该不会慢。页面的展示功能,其实可以通过“分页加载”、“延迟加载”、“查询缓存而不是数据库获取数据”等等手段,都可以提高页面的响应速度,我就不班门弄斧了。
问题五
当使用Non-GUI模式运行Jmeter时候,TPS可以达到500-600左右,这个是啥原因?
解答:当压测客户端,使用命令行模式运行脚本,不是采用GUI模式运行脚本;如果GUI模式压测的结果是300TPS左右,当切换到命令行模式后,压测的结果是600TPS左右;这个一般是服务器的配置不一样、服务器的访问量不一样等等原因。正常来说,使用命令行运行脚本,压测客户端使用自己的资源会更少,但是,不会影响TPS的指标,因为,你压测的是服务器,不是你机器本身,跟客户端的资源没有半点关系。
问题六
并发线程数和并发用户数,是同一概念吗?
解答:对于loadrunner和jmeter之类常规性能测试工具来说,答案是肯定的;大家可以设置线程数100,循环1次,最后,总的请求数一定是:100。但是对于gatling比较特殊,用的是协程,比线程更小的单位,所以,并发线程数和并发用户数不能直接画等号。
问题七
TPS和QPS的区别是什么?
解答:TPS是每秒钟处理完的事务次数,一般TPS是对整个系统来讲的。一个应用系统1s能完成多少事务处理,一个事务在分布式处理中,可能会对应多个请求。每秒钟处理完请求的次数;注意这里是处理完。具体是指发出请求到服务器处理完成功返回结果。
对于衡量单个接口服务的处理能力,用QPS比较多。
问题八
代理服务器提示网络不安全
解答:代理服务器提示网络不安全
持续记录整理。。。
—The End—
后续有好方法还会继续更新,欢迎大家一起交流互助。
如果对你有帮助请关注哦!
相关文章:

Jmeter常见问题和工作中遇到的问题解决方法汇总
一、标题Jmeter常见问题解决 1.1 Jmeter如何针对https协议进行接口测试? 解决方法: 协议更改为:https,端口号更改为443;Jmeter默认的是:http协议,端口号是:80 1.2 Jmeter如何解决默…...

蓝牙单连接和多连接知识
蓝牙单连接和多连接知识 生活中蓝牙连接多路蓝牙的情况越来越多,下面介绍下单连接和多连接的知识,供大家参考 一:蓝牙单连接 蓝牙单连接也称为Point-to-Point 点对点连接,是最常见的蓝牙连接场景,如手机<–>车载蓝牙。&…...

Mongodb—查询数据报错 Sort operation used more than the maximum 33554432 bytes of RAM
线上服务的MongoDB中有一个很大的表数据有十几万条。然后报了下面这个错误: “exception”:”org.springframework.data.mongodb.UncategorizedMongoDbException”, “message”:”Query failed with error code 96 and error message ‘Executor error during find command:…...

Java内存异常和垃圾回收机制
内存溢出异常 Java会存在内存泄漏吗?请简单描述 内存泄漏是指不再被使用的对象或者变量一直被占据在内存中。理论上来说, Java是有GC垃圾回收机制 的,也就是说,不再被使用的对象,会被GC自动回收 掉,自动…...

linux系统挂载逻辑卷和扩展逻辑卷组
fdisk /dev/vdb fdisk /dev/vdc在分区后需要修改分区类型为 8e,操作过程类似: [rootlocal ~] $ fdisk /dev/xvdb #### 选择磁盘 Command (m for help): m #### 帮助 Command actiona tog…...

WPF:WPF原生布局说明
前言 WPF在国内讨论度很小,我在这里记录一下WPF简单的原生控件是如何使用的,顺便回忆一下WPF的基础知识,有些忘记的比较厉害了 WPF简介 WPF是微软推出的桌面UI软件,是我觉得最早实现MVVM(数据驱动事务)&…...

SpringMVC常用注解用法
Spring MVC是基于Servlet API构建的原始Web框架。 MVC是Model View Controller的缩写即视图模型控制器,是一种思想,而Spring MVC是对该思想的具体实现。关于SpringMVC的学习我们需要掌握用户和程序的连接、获取参数以及返回数据三大部分。而这三大功能的…...

Liunx find locate 命令详解
文章目录 find补充说明语法选项参数实例根据文件或者正则表达式进行匹配否定参数根据文件类型进行搜索基于目录深度搜索根据文件时间戳进行搜索根据文件大小进行匹配删除匹配文件根据文件权限/所有权进行匹配借助-exec选项与其他命令结合使用搜索但跳过指定的目录find其他技巧收…...

JAVA并发专题(1)之操作系统底层工作的整体认识
一、分诺依曼计算机模型 现代计算机模型是基于-冯诺依曼计算机模型,计算机在运行时,先从内存中取出第一条指令,通过控制器的译码,按指令的要求,从存储器中取出数据进行指定的运算和逻辑操作等加工,然后再按…...

WiFi(Wireless Fidelity)基础(七)
目录 一、基本介绍(Introduction) 二、进化发展(Evolution) 三、PHY帧((PHY Frame ) 四、MAC帧(MAC Frame ) 五、协议(Protocol) 六、安全&#x…...

Agilent安捷伦33522B任意波形发生器
Agilent安捷伦33522B任意波形发生器30兆赫 2通道 为您最苛刻的测量生成全方位信号的无与伦比的能力 具有 5 倍低谐波失真的正弦波,可提供更纯净的信号 脉冲频率高达 30 MHz,抖动减少 10 倍,可实现更精确的计时 具有排序功能的逐点任意波形功能…...

PostgreSQL-如何创建并发索引
索引简介 索引是数据库中一种快速查询数据的方法。索引中记录了表中的一列或多列值与其物理位置之间的对应关系,就好比一本书前面的目录,通过目录中页码就能快速定位到我们需要查询的内容。 建立索引的好处是加快对表中记录的查找或排序,但…...

【大数据模型】使用Claude浅试一下
汝之观览,吾之幸也!本文主要聊聊Claude使用的流程,在最后对国内外做了一个简单问题的对比,希望国内的大数据模型更快的发展。 一、产品介绍 claude官网 Claude是一款由前OpenAI的研究员和工程师开发的新型聊天机器人,…...

鼎盛合——国产电量计芯片的分类与发展
电池技术在 200 余年的时间里不断演进,并在近 30 年的时间里取得了飞速发展,从最早期的铜-锌电池、铅酸电池,到目前的锂电池、钠电池,电池能量密度从早期的~10Wh/kg 飞速攀升至 200Wh/kg。回顾历史上来看,电池管理系统…...

交叉验证之KFold和StratifiedKFold的使用(附案例实战)
🤵♂️ 个人主页:艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞Ǵ…...

Cloud Kernel SIG月度动态:发布ANCK 5.10、4.19新版本,ABS新增仓库构建功能
Cloud Kernel SIG(Special Interest Group):支撑龙蜥内核版本的研发、发布和服务,提供生产可用的高性价比内核产品。 01 SIG 整体进展 发布 ANCK 5.10-014 版本。 发布 ANCK 4.19-027.2 版本。 ABS 平台新增 OOT 仓库临时构建功…...

JavaScript:new操作符
一、new操作符的作用 用于创建一个给定构造函数的实例对象 new操作符创建一个用户定义的对象类型的实例 或 具有构造函数的内置对象的实例。二、new一个构造函数的执行过程 2.1、创建一个空对象obj 2.2、将空对象的原型与构造函数的原型连接起来 2.3、将构造函数中的this绑定…...

XShell配置以及使用教程
目录 1、XShell介绍 2、安装XShell 1. 双击运行XShell安装文件,并点击“下一步” 2. 点击“我接受许可证协议中的条款”,点击“下一步” 3. 点击“浏览”更改默认安装路径,点击“下一步” 4. 直接点击“安装” 5. 安装完成࿰…...

Vue3 基础语法
文章目录 1.创建Vue项目1.1创建项目1.2 初始项目 2.vue3 语法2.1 复杂写法2.2 简易写法2.3 reactive(对象类型)2.4 ref(简单类型)2.5 computed(计算属性)2.6 watch(监听) 3.vue3 生命周期4.vue3 组件通信4.…...

【开源项目】Disruptor框架介绍及快速入门
Disruptor框架简介 Disruptor框架内部核心的数据结构是Ring Buffer,Ring Buffer是一个环形的数组,Disruptor框架以Ring Buffer为核心实现了异步事件处理的高性能架构;JDK的BlockingQueue相信大家都用过,其是一个阻塞队列…...

双向链表实现约瑟夫问题
title: 双向链表实现约瑟夫问题 date: 2023-05-16 11:42:26 tags: **问题:**知n个人围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去&…...

日心说为人类正确认识宇宙打下了基础(善用工具的重要性)
文章目录 引言I 伽利略1.1 借助天文望远镜获得了比别人更多的信息。1.2 确定了科学研究方法:实验和观测 II 开普勒三定律 引言 享有科学史上崇高地位的人,都需要在构建科学体系上有重大贡献。 日心说在哥白尼那里还是一个假说,伽利略拿事实…...

Kali-linux系统指纹识别
现在一些便携式计算机操作系统使用指纹识别来验证密码进行登录。指纹识别是识别系统的一个典型模式,包括指纹图像获取、处理、特征提取和对等模块。如果要做渗透测试,需要了解要渗透测试的操作系统的类型才可以。本节将介绍使用Nmap工具测试正在运行的主…...

Java版本电子招标采购系统源码:营造全面规范安全的电子招投标环境,促进招投标市场健康可持续发展
营造全面规范安全的电子招投标环境,促进招投标市场健康可持续发展 传统采购模式面临的挑战 一、立项管理 1、招标立项申请 功能点:招标类项目立项申请入口,用户可以保存为草稿,提交。 2、非招标立项申请 功能点:非招标…...

Java字符串知多少:String、StringBuffer、StringBuilder
一、String 1、简介 String 是 Java 中使用得最频繁的一个类了,不管是作为开发者的业务使用,还是一些系统级别的字符使用, String 都发挥着重要的作用。String 是不可变的、final的,不能被继承,且 Java 在运行时也保…...

中国20强(上市)游戏公司2022年财报分析:营收结构优化,市场竞争进入白热化
易观:受全球经济增速下行的消极影响,2022年国内外游戏市场规模普遍下滑。但中国游戏公司凭借处于全球领先水平的研发、发行和运营的能力与经验,继续加大海外市场布局,推动高质量发展迈上新台阶。 风险提示:本文内容仅代…...

如何自学C++编程语言,聊聊C++的特点,别轻易踩坑
为什么现在有那么多C培训班呢?因为这些培训班可以为学生安排工作,而外包公司因为缺人,需要做很多项目,可能需要在全国各地分配不同的程序员去干不同的项目,因此需要大量的程序员入职。这样,外包公司就会找培…...

算法Day07 | 454.四数相加II,383. 赎金信,15. 三数之和, 18. 四数之和
Day07 454.四数相加II383. 赎金信15. 三数之和18. 四数之和 454.四数相加II 题目链接:454.四数相加II 寻找两个数组之和,是否与另外两个数组之和有特定的关系。 因为数值可能跨度太大,选择使用下标表示为对应的数值大小,会很浪费…...

ps抠图、抠头发去背景等
方法一:背景橡皮擦 一、很早之前我们使用的是魔术棒工具,但现在我们可以使用Photoshop 有内置的“背景橡皮擦” 步骤: 第1步:在Photoshop中打开需要修的图。 第2步:单击并按住工具栏…...

计算机组成原理基础练习题第一章
有些计算机将一部分软件永恒地存于只读存储器中,称之为() A.硬件 B.软件C.固件 D.辅助存储器输入、输出装置以及外界的辅助存储器称为() A.操作系统 B.存储器 C.主机 D.外围设备完整的计算机系…...