JMeter学习第三天+

news2025/1/13 15:49:44

性能测试前言

老师开局一句话:性能测试和你会不会JMeter一点关系没有……

作者坚持技多不压身的原则,还是多学一点JMeter吧,看老师到底要怎么讲下去,什么并发量、吞吐量啥的……

性能测试的核心思想:在于创造大量并发去访问接口,检查当前接口在极端情况下会出现的问题。

比如访问的人数越多,内存会不会小?CPU会不会高?网络带宽会不会大?这三种指标只要有一项过高,会牵连其他两项升高,最终导致服务器停滞。

JMeter创造并发的手段很多很全面(所以性能测试还是可以用到JMeter的,可能老师觉得思想和知识积累才是性能测试最重要的东西吧,要知道核心特征的值对应着什么样的性能……),有丰富的插件,可以对各种场景进行模拟。

怎样学习性能测试:

1.首先明确吞吐量QPS/TPS系统在单位时间内处理的请求数量、并发量、响应时间等核心性能指标;

2.再在实际项目中进行监控/报警,保证服务器维持一个较为稳定的状态,或者能够及时重启服务器把损失降到最低;

3.然后,涉及到软件工程所讲的性能需求分析,怎么压怎么测试要写一个性能测试报告,这是最为重要的一点;

4.最后专家能力:能够及时分析性能瓶颈,跟开发人员提出优化建议。


性能核心概念

下面是一些基本概念的解释和如何利用这些概念来判断性能:

1. 吞吐量 (QPS/TPS)

  • 定义: QPS(Queries Per Second) 是每秒查询率,TPS(Transactions Per Second) 是每秒事务数。它们衡量了系统每秒钟能够处理的请求数或事务数。QPS适用于没有写入操作的场景,TPS适用于写入操作的场景。
  • 应用: 通过分析系统的QPS/TPS,可以评估系统能够处理的并发负载量。如果QPS/TPS太低,可能表示系统无法高效处理请求。
  • 如何优化:优化代码和数据库查询、提升服务器硬件性能、使用负载均衡(作者在Redis中有介绍过)和分布式系统架构

2. 并发量

  • 定义: 并发量指的是系统能够同时处理的用户数量或请求数量
  • 应用: 测量并监控并发量可以帮助确定系统是否能够在高负载下稳定运行。
  • 注意,如果涉及到庞大数据并发,则建议分布式测试并发量。在JMeter中,只要用户数达到上万,个人PC肯定死机,服务器也不可能搞得太多,所以要分担这样的测试。比如10w并发,可以分成20台机器,每台进行5k并发。

3. 响应时间

  • 定义: 响应时间是系统从接收到请求到生成响应所花费的时间
  • 应用: 如果响应时间太长,用户可能会对网站或应用感到不满。

4. 负载测试

  • 定义: 负载测试是指通过模拟多个用户同时访问应用来评估应用的性能。
  • 应用: 通过负载测试,可以找到系统在高负载下的性能瓶颈和问题。

5. 压力测试

  • 定义: 压力测试是将系统压力推至极限,以确保系统在极端条件下的稳定性和可靠性。
  • 应用: 通过压力测试,可以了解系统的极限性能和确定系统的稳定性。

个人开发网站的例子

作者将来需要开发一个小的不能再小的网站。根据这个场景,下面是一些合理的性能期望:

  • 吞吐量(QPS): 一个小型的网站,QPS可以是10-100之间
  • 并发量: 并发用户可能在10-100之间
  • 响应时间: 响应时间应该少于2秒

如果网站QPS超过100,这是很好的,但也要确保服务器和数据库等可以处理这种负载。如果响应时间超过2秒,用户可能会觉得网站速度慢,应该考虑优化网站,比如通过减少图片大小、使用缓存等方法。如果QPS低于10,可能表示网站性能存在问题。如果并发量无法达到10或响应时间超过3秒,也表示网站可能需要优化和改进。

总结

每个系统和应用都有自己的性能需求和标准。重要的是定期进行性能测试,监控系统性能指标,并根据测试结果和监控数据进行优化和调整,以确保系统能够满足用户和业务的需求。


JMeter停更,作者实在是学不动了,性能测试太麻烦了,等作者准备面试或者丰富简历的时候再深入学习吧。

抱歉各位,作者先用apipost去完成作业了……这些是一通百通的,所以,所有的学习都是有用的!

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

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

相关文章

16,8和4位浮点数是如何工作的

50年前Kernighan、Ritchie和他们的C语言书的第一版开始,人们就知道单精度“float”类型有32位大小,双精度类型有64位大小。还有一种具有扩展精度的80位“长双精度”类型,这些类型几乎涵盖了浮点数据处理的所有需求。但是在最近几年&#xff0…

Javase ------> 泛型

Jdk自从5.0后引入泛型之后一直没有删除,而且在我们的集合框架中进场能使用的到,今天我们就详细介绍一下泛型的一些特性和使用须知,希望能对你的编程学习带来一些帮助. 1.什么是泛型 泛型,即“参数化类型”。一提到参数,最熟悉的就是定义方法时有形参&…

c# 中的类

反射 Activator.CreateInstance class Program {static void Main(string[] args){//反射Type t typeof(Student);object o Activator.CreateInstance(t, 1, "FJ");Student stu o as Student;Console.WriteLine(stu.Name);//动态编程dynamic stu2 Activator.Cre…

【算法】二分相关题目

文章目录 二分相关二分查找在排序数组中查找元素的第一个和最后一个位置寻找峰值x 的平方根0~n-1中缺失的数字## 搜索插入位置 二分相关 二分查找 https://leetcode.cn/problems/binary-search/ 在一个有序数组当中,查找值为target的元素,返回下标 cla…

SSM - Springboot - MyBatis-Plus 全栈体系(十七)

第三章 MyBatis 五、MyBatis 高级扩展 1. mapper 批量映射优化 1.1 需求 Mapper 配置文件很多时,在全局配置文件中一个一个注册太麻烦,希望有一个办法能够一劳永逸。 1.2 配置方式 Mybatis 允许在指定 Mapper 映射文件时,只指定其所在的…

2023年中国家用智能门锁市场发展概况分析:家用智能门锁线上市场销量290.4万套[图]

智能门锁是指区别于传统机械锁的基础上改进的,在用户安全性、识别、管理性方面更加智能化简便化的锁具。智能门锁是门禁系统中锁门的执行部件。智能门锁区别于传统机械锁, 是具有安全性, 便利性, 先进技术的复合型锁具。 智能门锁级别分类 资料来源:共研…

MARS: An Instance-aware, Modular and Realistic Simulator for Autonomous Driving

● MARS: An Instance-aware, Modular and Realistic Simulator for Autonomous Driving(基于神经辐射场的自动驾驶仿真器) ● https://github.com/OPEN-AIR-SUN/mars ● https://arxiv.org/pdf/2307.15058.pdf ● https://mp.weixin.qq.com/s/6Ion_DZGJ…

flink处理函数--副输出功能

背景 在flink中,如果你想要访问记录的处理时间或者事件时间,注册定时器,或者是将记录输出到多个输出流中,你都需要处理函数的帮助,本文就来通过一个例子来讲解下副输出 副输出 本文还是基于streaming-with-flink这本…

解决SpringBoot Configuration Annotation Processor not configured

版权声明 本文原创作者:谷哥的小弟作者博客地址:http://blog.csdn.net/lfdfhl 问题描述 在使用ConfigurationProperties注解和EnableConfigurationProperties注解时,IDEA报错:SpringBoot Configuration Annotation Processor no…

【chainlit】使用chainlit部署chatgpt

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kuan 的首页,持续学…

微服务架构改造案例

最后一个部分,结合我们自己的财务共享平台项目进行了微服务架构改造案例分析。 对于改造前的应用,实际上存在四个方面的问题。 其一是关于高可用性方面的,即传统的单体应用我们在进行数据库水平扩展的时候已经很难扩展,已经出现…

XShell远程连接Ubuntu

环境 系统:Ubuntu 18.04.6 LTS IP:192.168.1.4 ps:查看ubuntu版本 lsb_release -a 查看ubuntu的ip地址 Ubuntu系统准备工作 root权限 打开ubuntu系统后,打开终端,切换为root权限:su root 如果出现su root认证失…

管理经济学基本概念(五):一些基本术语

1、理性-行动者范式 使经济学家行动一致的东西就是采用理性-行动者范式来预判人的行为。简单地说,这个范式认为人们的行动式理性的、优化的和自利的。 2、税后净营业利润 税后经营净利润(NOPAT)是指将公司不包括利息收支的营业利润扣除实付所得税税金之后的数额加…

Acwing 907. 区间覆盖

Acwing 907. 区间覆盖 知识点题目描述思路讲解代码展示 知识点 贪心 题目描述 思路讲解 代码展示 #include <iostream> #include <algorithm>using namespace std;const int N 100010;int n;struct Range {int l, r;bool operator < (const Range &W) …

【day11.02】网络编程脑图

大小端存储&#xff1a; ip地址划分&#xff1a;

MySQL 锁分类和详细介绍

锁是计算机协调多个进程或线程并发访问某一资源的机制&#xff0c;在数据库中&#xff0c;除传统的计算资源&#xff08;CPU、RAM、I/O&#xff09;的争用以外&#xff0c;数据也是一种供许多用户共享的资源&#xff0c;锁机制是保证数据一致性和并发性的重要手段&#xff0c;它…

软件设计模式系列之二十二——状态模式

1 模式的定义 状态模式是一种行为型设计模式&#xff0c;它允许对象在内部状态发生改变时改变其行为&#xff0c;使得对象的行为看起来像是改变了其类。状态模式将对象的状态抽象成一个独立的类&#xff0c;让对象在不同状态下具有不同的行为&#xff0c;而且可以在运行时切换…

做一个优秀的博士生,时间的付出是必要条件

&#xff0a;图片来自管理学季刊 时间的付出 所有成功的科学家一定具有的共同点&#xff0c;就是他们必须付出大量的时间和心血。这是一条真理。实际上&#xff0c;无论社会上哪一种职业&#xff0c;要想成为本行业中的佼佼者&#xff0c;都必须付出比常人多的时间。有时&…

【知识点随笔分析 | 第六篇】HTTP/1.1,HTTP/2和HTTP/3的区别

前言&#xff1a; 当今互联网已成为人们生活的重要组成部分&#xff0c;而HTTP协议&#xff08;Hypertext Transfer Protocol&#xff09;是支持Web通信的基础。随着Web技术的发展和互联网应用的不断增多&#xff0c;HTTP也在不断演进。本文旨在介绍HTTP的演变过程中的三个重要…