Jmeter性能压测4000并发

news2024/11/23 22:22:02

性能测试的底层逻辑

  • 程序为什么会有性能问题

用户操作 客户端(web/app/小程序)触发网络请求,服务器处理大量网络请求代码运行需要大量服务器资源(CPU、内存、网络、磁盘等等)

资源不是无限,硬件配置不是随意变动。

大量请求带来资源消耗大于服务器资源,就出现性能问题(响应慢、报错、...)

  • 性能测试的目标是什么?

通过模拟出大量用户使用的情况,分析程序的反应(响应时间、吞吐量、是否报错...)

  • 如何模拟性能场景(这次目标

要性能测试,先做接口分析

        压测目标场景涉及的接口

        性能之前先测接口

借住工具去发起大量请求-Jmeter

         一人一双手,无法模拟大量请求。

如何模拟多个用户操作的场景

  • 借助工具 发起 海量的网络请求(jmeter、loadrunner、k6、Locust..)
  • 线程(虚拟人)-操作系统底层去执行一个任务的最小单位
  • 线程组配置:

                  线程数量: 申请多少线程来为你工作

                  Ramp-Up时间(秒):线程就绪的时间(多久时间让线程就绪)

                  循环次数:

                        输入数字: 线程执行的任务的次数

                        永远:一直干活不停,干完一次就下一次

                   调度器:持续时间-测试的时间长短

1.线程各干各的(单个线程的角度,干活的顺序就是你定义的先后顺序)
2.如果制定了循环次数: 线程执行完指定的次数后,线程结束
3.如果指定了持续时间: 时间一到,线程陆续停止干活

线程数量如何确定

考题1:每秒20个请求,持续至少30秒钟

方案1:20线程,持续30秒,循环次数:永久

结果:30秒左右--请求了800 每秒27.8

方案2:600线程,持续30秒,Ramp-Up:30秒,循环次数:1

结果:正确

  • 样本数: 压测过程中jmeter发起的总请求数
  • 响应时间: 系统在 指定的压力状态下,能否及时响应用户请求
  • 吞吐量: 每秒处理的请求数量
方案3:20线程,持续30秒,循环次数:永久+ 定时器

相比较方案2:不需要频繁的创建线程和销毁线程,节约jmeter所在服务器的压力

工作中经常碰到场景1:领导(架构师)直接说 测一下系统能不能支撑 4000/s 请求

方案2思路: 总共:172,800,000 个线程、分为43,200秒(12小时)启动(不建议)

弊端: 每秒都会有 4000个线程被创建和销毁,极度消耗jmeter所在机器的CPU资源。(可能导致运行jmetgr的机器就卡住了)

方案3思路:4000个线程,每秒种发起一次请求,持续指定的时间。

弊端:一个电脑上运行大量的线程,可能导致电脑卡顿,从而达不到想要的并发压力

Jmeter分布式集群压测

通过 多台机器 同时执行 性能压测脚本,模拟更大的并发压力

1.多个独立环境,运行jmeter            

2.执行机 环境搭建与启动 

 3.控制机 修改配置文件重启jmeter

 远程启动 

 4000个线程 有2个服务器 每个服务器就运行2000个

学习可参考:jmeter分布式集群压测_jmeter集群压测-CSDN博客​​​​​​​

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

python-分享篇-英文短文自动分词写入文本文件

文章目录 准备代码效果 准备 代码 import string f open(./data/split.txt) sf.read() str1s.title() print(str1) print("".join([s for s in str1.splitlines(True) if s.strip()])) list1 str1.split() # 采用默认分隔符进行分割 #字符串列表去重 l1list(set(l…

lvs的dr模式综合实践

目录 ​编辑虚拟机准备工作 ​编辑​编辑​编辑 配置过程 配置client主机 配置router主机 配置lvs主机(vip使用环回来创建) 配置server1主机(vip使用环回来创建) 配置server2主机(vip使用环回来创建&#xff0…

SpringBoot+Mybatis 分页

无论多数据源,还是单数据源,分页都一样,刚开始出了点错,是因为PageHelper的版本问题 这里用的SpringBoot3 SpringBoot2应该是没有问题的 相关代码 dynamic-datasourceMybatis多数据源使用-CSDN博客 依赖 <?xml version"1.0" encoding"UTF-8"?&g…

Maven+Tomcat环境搭建

Maven Maven框架的作用 1.在JavaWeb开发中需要使用大量的jar包,这些jar包需要手动导入 2.自动导入和配置jar包 Maven项目架构管理工具 方便导入jar包 Maven的核心思想:约定大于配置 有约束不要去违反 Maven会规定好你该如何去编写java代码,必须按照规范来 安装流程 1…

Godot学习笔记8——PONG游戏制作

目录 一、小球 二、地图 三、积分系统 四、玩家场景 五、导出与发布 PONG是1972年由雅达利公司推出的游戏&#xff0c;主要玩法为玩家控制两个可以上下移动的板子击打屏幕中不断运动的球 一、小球 我们首先创建一个“Area2D”场景&#xff0c;在它下方创建“Collisi…

好书推荐|复旦大学专家团队著《大规模语言模型:从理论到实践》(附PDF)

前言 在这个迅猛发展且复杂多变的技术领域&#xff0c;掌握大型模型的理论核心并有效地将其应用于实践&#xff0c;对许多人来说是一项艰巨的任务。为此&#xff0c;《大规模语言模型&#xff1a;从理论到实践》一书应运而生。本书由复旦大学计算机科学技术学院知名教授张奇领…

将增强型乳腺摄影添加到断层合成中用于有乳腺癌个人病史女性的乳腺癌检测:| 文献速递-基于深度学习的乳房、前列腺疾病诊断系统

Title 题目 Addition of Contrast-enhanced Mammography to Tomosynthesis for Breast Cancer Detection in Women with a Personal History of Breast Cancer: 将增强型乳腺摄影添加到断层合成中用于有乳腺癌个人病史女性的乳腺癌检测&#xff1a; Background 背景 Dig…

【黄啊码】什么是SD?SD的使用技巧

目录 SD的简介 SD的优势 1、不需要绘画基础&#xff0c;便能绘制精美的图片&#xff0c;插画 2、StableDiffusion不仅用于静态图像生成&#xff0c;还可应用于动态图像和视频创作&#xff0c;拓宽了AI绘画的应用领域。 3、快速发展&#xff0c;成熟的社区——帮助使用者…

Linux系统 腾讯云服务/宝塔面板安装《最新版本2024》禅道开源版本20.2

文章目录 目录 文章目录 安装流程 小结 概要安装流程技术细节小结 概要 有两种方式1.自带有服务器安装和2.使用禅道官方的服务器免费使用 第一种&#xff1a;免费的提供5人使用&#xff0c;存储的数据大小也是有限制的范围的 禅道下载 - 禅道项目管理软件 下滑页面就能…

大事件前端篇JavaScript导入导出

前置知识&#xff1a; 呃呃呃......有那么一点点&#xff1f;&#xff1f;但不多。。。。不管&#xff0c;先学&#xff0c;不会的时候再去看响应的知识点吧。 补充一个模块化相关的知识点&#xff1a;JavaScript-导入导出 JS提供的导入导出机制&#xff0c;可以实现按需导…

尚品汇-创建ES索引库(二十七)

目录&#xff1a; &#xff08;1&#xff09;商品检索功能介绍 &#xff08;2&#xff09;根据业务搭建数据结构 &#xff08;3&#xff09;nested 介绍 &#xff08;4&#xff09;搭建service-list服务 &#xff08;5&#xff09;构建实体与es mapping建立映射关系 &…

前端常用的几个工具网站

觉得不错的前端工具类网站 1、Grid布局生成 https://cssgrid-generator.netlify.app 2、拟物按钮样式生成 https://neumorphism.io 3、玻璃形态效果 在线制作CSS玻璃形态 4、一些Button、checkBox、switch、card的css样式 零代码 - 精美CSS样式库 5、CSS阴影生成 在线创建…

python游戏开发之五子棋游戏制作

五子棋是一种源自中国的传统棋类游戏&#xff0c;起源可以追溯到古代。它是一种两人对弈的游戏&#xff0c;使用棋盘和棋子进行。棋盘通常是一个 1515 的网格&#xff0c;棋子分为黑白两色&#xff0c;双方轮流在棋盘上落子。游戏的目标是通过在棋盘上落子&#xff0c;使自己的…

ViT和SwinTransformer详解

ViT是Google brain发表于ICLR21上的工作&#xff0c;开创性将transformer用在vision领域&#xff0c;且图像识别性能超CNN&#xff0c;至今引用3.8w&#xff1b;原文&#xff1a;https://arxiv.org/pdf/2010.11929 SwinTransformer是微软亚洲研究院发表于ICCV21上&#xff0c;…

使用python CodeGeeX 辅助数据处理xml

1 背景:手头上有N 张算是开发完成的报表,但是由于每个报表是不同的人开发的,每个人不同的编码风格,准备看看报表是否都定义了Title,是否都定义了报表的描述,是否有不带where条件的前台查询,是否同一个参数定义一致.现在AI 代码助手功能据说很强大了,试试描述需求让机器来辅助编…

【中项】系统集成项目管理工程师-第10章 项目整合管理-10.3指导与管理项目工作

前言&#xff1a;系统集成项目管理工程师专业&#xff0c;现分享一些教材知识点。觉得文章还不错的喜欢点赞收藏的同时帮忙点点关注。 软考同样是国家人社部和工信部组织的国家级考试&#xff0c;全称为“全国计算机与软件专业技术资格&#xff08;水平&#xff09;考试”&…

常用在线 Webshell 查杀工具推荐

一、简介 这篇文章将介绍几款常用的在线 Webshell 查杀工具&#xff0c;包括长亭牧云、微步在线云沙箱、河马和VirusTotal。每个工具都有其独特的特点和优势&#xff0c;用于帮助用户有效检测和清除各类恶意 Webshell&#xff0c;保障网站和服务器的安全。文章将深入探讨它们的…

实现自定义QDateEdit可删除日期值

在Qt框架中&#xff0c;QDateEdit是一个用于编辑日期的控件&#xff0c;如果想要删除QDateEdit不是特别好做&#xff0c;如果直接获取QDateEdit中的QLineEdti并设置显示删除按钮&#xff08;代码如下所示&#xff09;&#xff0c;删除按钮会一直显示&#xff0c;效果并不好&…

SIP 消息的路由和 7 个相关的 Header IMS-HSS 中的透明数据及非透明数据(VoNR、VoLTE均用)

目录 1. SIP 消息的路由和 7 个相关的 Header 1.1 SIP 消息路由相关的7个Header 1.2 理解 Record-Route 和 Route 1.3 Record-Route 和 Route 流程举例 1.4 SIP 请求消息的路由原则 1.5 SIP 请求消息路由举例 1.6 SIP 请求消息路由原则和流程举例 2. IMS-HSS 中的透明数…

【C++指南】命名空间

&#x1f493; 博客主页&#xff1a;倔强的石头的CSDN主页 &#x1f4dd;Gitee主页&#xff1a;倔强的石头的gitee主页 ⏩ 文章专栏&#xff1a;《C指南》 期待您的关注 目录 一、命名空间的重要性 1. C语言中没有命名空间而存在的问题 2. C引入了命名空间解决的问题 3.…