Jmeter 性能压测 —— 常遇问题与解决技巧!

问题1:如何在大并发测试下,让登录或者后续接口只执行一次?

分析:

这个问题网上的答案其实很多,但是大多不靠谱。

比如推荐使用仅一次控制器,但是仅一次控制器对线程组无效;

比如推荐跨线程组调用,但是这样比较繁琐,新人也搞不定;其实只要各位对元件熟悉,这个问题很简单

下图100线程:

图片

添加一个吞吐量定时器,选择总数计算

图片

现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:691998057【暗号:csdn999】

问题2:在Jmeter压测过程中有哪些大的性能消耗?

分析:

压测过程中如果加入了数据的读写,会不会影响性能结果?

我们知道,读写本地文件是需要和磁盘做交互的。磁盘在系统中处于最底层,速度是最慢的。

频繁的磁盘交互会极大的增加性能开销,影响测试结果。会降低实际的tps。

解决方案:

首先把cookie存到系统属性里面。存属性就相当于存到了应用缓存,缓存的查询效率是最高的。

\({__setProperty(cookie,\){cookie},)}

图片

图片

后续请求处理cookie的时候,直接从属性表里面提取${__P(cookie,)}

图片

问题3:如何识别tps拐点?

分析:

先分析下面这张图。下面这张图上展示了阶梯负载量,响应时间,tps三种数据

图片

从图上能看出来三个趋势

tps升到一个相对高点之后,长期维持稳定,不再升高运行一段时间之后,响应时间开始逐渐升高,但是趋势不明显随着负载越来越高,tps长期保持稳定

分析:

在负载逐渐升高的情况下,tps却长期不变。这并不是说明性能很稳定,而是说明我们单位时间内的单线程tps是在逐渐降低的(单位时间tps/总线程)

再分析响应时间,我们的响应时间其实也是在逐渐升高,从侧面反映出线程的tps是在下降的。

但是具体在多少负载量的时候我们的瓶颈点已经到来?

这张图上不好计算,我们换一个监听器

图片

这张图的趋势就比较明显了。随着负载升高,线程的tps逐渐达到一个高点,然后开始下降。那么这个最高点就是我们的性能瓶颈点

问题4:Jmeter的4444端口无法监听远程服务器怎么解决?

解决方案:

4444端口在阿里云和腾讯云服务上,是默认不开放的。

想要监听到,有两种办法,一种是防火墙开放4444端口,一种是更换端口

命令如下

./startAgent.sh --udp-port 0 --tcp-port 1234

图片

问题5:远程机执行Jmeter脚本,怎么自动切换csv参数路径格式?

解决方案:

只需要在参数路径中加入一组函数,就可以实现参数路径自动定位,如下

{__P(user.dir,)}{__P(user.dir,)}{__P(file.separator,)}test.txt`

图片

这一组函数的作用是,不论在Linux还是在本机,都可以自动切换路径格式,不需要手动修改。

下面是配套资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

最后: 可以在公众号:自动化测试老司机 ! 免费领取一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java网络爬虫--概述与原理

目录标题 基本概念与原理爬虫与搜索系统的关系爬虫运行原理爬虫步骤DNS域名解析 爬虫开发本质网络爬虫的分类通用网络爬虫聚集网络爬虫增量式网络爬虫Deep Web爬虫 参考文献 基本概念与原理 爬虫又叫网络蜘蛛,一种运行在互联网上用来获取数据的自动程序。 互联网的…

【扩散模型】10、ControlNet | 用图像控制图像的生成(ICCV2023)

论文:Adding Conditional Control to Text-to-Image Diffusion Models 代码:https://github.com/lllyasviel/ControlNet 出处:ICCV2023 Best Paper | 斯坦福 时间:2023.02 一、背景 文本到图像的生成尽管已经有很好的效果&…

全面认识反向代理与负载均衡神器 —— Nginx

目录 一. 前言 二. Nginx 特点和作用 三. Nginx 安装 四. Nginx 常用命令 五. Nginx 核心配置 5.1. 配置文件结构 5.2. 配置文件 main 段核心参数 5.2.1. user 5.2.2. pid 5.2.3. worker_rlimit_nofile_number 5.2.4. worker_rlimit_core 5.2.5. worker_processes_…

C#VS2022 打包成安装包

步骤参考:VisualStudio(2022)- 打包项目文件为.exe安装包_vs2022打包exe-CSDNja 步骤参考上方链接,不过在Application Folder文件夹中加的是\项目名称\bin\Debug\下的全部文件,其他地方一样。 最终生成的安装包在Deb…

NVIDIA Container Toolkit(NVIDIA Docker)

引言 Nvidia Docker该项目已被NVIDIA Container Toolkit取代。此存储库提供的工具已被弃用,并且该存储库已存档。 nvidia-docker不再支持包装器,并且 NVIDIA Container Toolkit 已进行扩展,允许用户配置 Docker 以使用 NVIDIA Container Ru…

网络多线程开发小项目--QQ登陆聊天功能(用户登陆功能实现)

9.1.1用户登陆功能实现 1、需求分析 2、代码实现 2.1、Client和Server端共有类 1)cn.com.agree.qqcommon.Message package cn.com.agree.qqcommon;import lombok.Data; import lombok.extern.slf4j.Slf4j;import java.io.Serializable; Slf4j Data public class M…

pve多台物理机虚拟化 pve虚拟机优势

Proxmox VE是一个运行虚拟机和容器的平台。基于Debian Linux,完全开源。为了获得最大的灵活性,实现了两种虚拟化技术——基于内核的虚拟机(KVM)和基于容器的虚拟化(LXC)。一个主要的设计目标是使管理尽可能容易。运行在单个节点上使用Proxmox VE&#xf…

基于SSM的校园二手交易管理系统的设计与实现

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:Vue 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目:是 目录…

AIGC无人直播系统技术

随着信息技术的快速发展和互联网的普及,直播行业迎来了蓬勃发展的机遇。然而,传统的直播方式存在一些局限性,如场地限制、设备携带不便等问题。为了解决这些问题,AIGC推出了一项创新性的无人直播系统技术。 AIGC无人直播系统技术…

linux 系统安全及应用

一、账号安全基本措施 1.系统账号清理 1.将用户设置为无法登录 /sbin/nologin shell——/sbin/nologin却比较特殊,所谓“无法登陆”指的仅是这个用户无法使用bash或其他shell来登陆系统而已,并不是说这个账号就无法使用系统资源。举例来说,…

GIT - 清除历史 Commit 瘦身仓库

目录 一.引言 二.仓库清理 ◆ 创建一个船新分支 ◆ 提交最新代码 ◆ 双指针替换分支 三.总结 一.引言 由于项目运行时间较长,分支较多,且分支内包含很多不同的大文件,随着时间的推移,历史 Git 库的容量日渐增发&#xff0c…

密码学(三)

文章目录 前言一、Software Attestation Overview二、Authenticated Key Agreement三、The Role of Software Measurement 前言 本文来自 Intel SGX Explained 请参考: 密码学(一) 密码学(二) 一、Software Attesta…