压力测试详解

压力测试

压力测试是看当前软硬件环境下系统所能承受的最大负荷,找出系统瓶颈。为了在线上的处理能力和稳定性维持在一个标准范围内,做到心中有数。

在压力测试,我们希望找到其他测试方法(单元测试)更难发现的错误,比如内存泄漏,并发与同步问题。
有效的压力测试将应用重复、并发、量级、随机变化的关键条件。

性能指标

  • 响应时间(Response Time: RT)
    响应时间指用户从客户端发起一个请求开始,到客户端接收到从服务器端返回的响
    应结束,整个过程所耗费的时间。
  • HPS(Hits Per Second) :每秒点击次数,单位是次/秒。
  • TPS(Transaction per Second):系统每秒处理交易数,单位是笔/秒。
  • QPS(Query per Second):系统每秒处理查询次数,单位是次/秒。
    对于互联网业务中,如果某些业务有且仅有一个请求连接,那么 TPS=QPS=HPS,一般情况下用 TPS 来衡量整个业务流程,用 QPS 来衡量接口查询次数,用 HPS 来表示对服务器单击请求。
  • 无论 TPS、QPS、HPS,此指标是衡量系统处理能力非常重要的指标,越大越好,根据经验,一般情况下:
    金融行业:1000TPS~50000TPS,不包括互联网化的活动
    保险行业:100TPS~100000TPS,不包括互联网化的活动
    制造行业:10TPS~5000TPS
    互联网电子商务:10000TPS~1000000TPS
    互联网中型网站:1000TPS~50000TPS
    互联网小型网站:500TPS~10000TPS
  • 最大响应时间(Max Response Time) 指用户发出请求或者指令到系统做出反应(响应)的最大时间。
  • 最少响应时间(Mininum ResponseTime) 指用户发出请求或者指令到系统做出反应(响应)的最少时间。
  • 90%响应时间(90% Response Time) 是指所有用户的响应时间进行排序,第 90%的应时间。
    从外部看,性能测试主要关注如下三个指标:
    吞吐量:每秒钟系统能够处理的请求数、任务数。
    响应时间:服务处理一个请求或一个任务的耗时。
    错误率:一批请求中结果出错的请求所占比例。

JMeter

下载

https://jmeter.apache.org/download_jmeter.cgi
在这里插入图片描述

启动jmeter

在这里插入图片描述

可以将语言调整为简体中文

在这里插入图片描述

测试步骤

1、 新建测试计划
在这里插入图片描述
2、 添加线程组
在这里插入图片描述
3、 给线程组添加测试行为 取样器
在这里插入图片描述
例如常用的http请求
在这里插入图片描述
4、查看结果需要添加监听器
在这里插入图片描述
比如结果数查看 失败还是成功了
汇总报告可以查看指标 吞吐量
聚合报告 可以看请求响应情况 吞吐量
各种图
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

JMeter Address Already in use

windows 提供TCP/ip 连接的端口为1024-5000 并且要四分钟才来循环回收,就会导致在短时间内大量请求将端口占满了
解决方案

  1. cmd(WIN+R) 中 用regedit 命令打开注册表
  2. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip
    在这里插入图片描述
  3. 新建两个DWORD 的值 最大端口和超时时间 重启电脑后生效
    在这里插入图片描述
    在这里插入图片描述

作者声明

如有问题,欢迎指正!

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

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

相关文章

数据可视化(附带操作实例)

一、主要目的: 数据可视化是关于图形或表格的数据展示,旨在借助图形化手段,清晰有效的传达与沟通信息。通过直观地传达关键内容与特征,从而实现对相当稀疏而又复杂的数据集的深入洞察。熟悉在Python开发环境中支持数据可视化环节…

机器学习 | SVM支持向量机

欲穷千里目,更上一层楼。 一个空间的混乱在更高维度的空间往往意味着秩序。 Machine-Learning: 《机器学习必修课:经典算法与Python实战》配套代码 - Gitee.com 1、核心思想及原理 针对线性模型中分类两类点的直线如何确定。这是一个ill-posed problem。…

百度 STI2 赛题二-基于向量交集的 TopK 搜索 优化学习笔记

百度 STI2 赛题二-基于向量交集的 TopK 搜索 优化学习笔记 注: 本文主要是对参赛冠军团队"晨曦"的 xiatwhu/baidu_topk 代码的学习整理, 下文中的"代码作者"即指的该仓库的作者. 赛题信息 给定850万条规模的数据文件,每条数据是最大128维度的…

Linux线程——基本知识

线程与进程的区别 典型的UNIX/Linux进程可以看成只有一个控制线程: 一个进程在同一时刻只做一件事情。有了多个控制线程后,在程序设计时可以把进程设计成在同一时刻做不止一件事,每个线程各自处理独立的任务。 进程有独立的地址空间,一个进…

如何让32位.Net 应用打开3G开关

昨天刚分享了《如何让.NET应用使用更大的内存》&#xff0c;结果就有同学说&#xff0c;<最好加一下32位如何开启大内存&#xff0c;因为很多传统项目32位&#xff0c;实在迁移不动了>&#xff0c;那么&#xff0c;我就验证了一些可行的方案&#xff0c;发现都挺简单的。…

IDEA运行JSP启动后页面中文乱码

源代码截图&#xff1a; 运行结果截图&#xff1a; 在<head>标签内加入代码 <% page contentType"text/html; charsetgb2312"%> 重启服务器&#xff0c;问题已改善 ————————————————— 该文仅供学习以及参考&#xff0c;可做笔记收藏…

不同版本QT使用qmake时创建QML项目的区别

不同版本QT使用qmake时创建QML项目的区别 文章目录 不同版本QT使用qmake时创建QML项目的区别一、QT5新建QML项目1.1 目录结构1.2 .pro 文件内容1.3 main.cpp1.4 main.qml 二、QT6新建QML项目2.1 目录结构2.2 .pro文件内容2.3 main.cpp2.4 main.qml 三、两个版本使用资源文件的区…

手机大厂的自由窗口freeform功能基于aosp14/安卓14适配完成-千里马android framework实战开发

背景 hi&#xff0c;粉丝朋友们&#xff1a; 今年2023年已经块过去了&#xff0c;各个手机厂商已经开始适配aosp14&#xff0c;甚至有的是已经适配完成&#xff0c;明年市场就大部分手机出厂就都是android 14了。 近期有个马哥学员刚好求助马哥一个关于以前马哥课程里面自由窗…

【为数据之道学习笔记】5-7五类数据主题联接的应用场景

在数字化转型的背景下&#xff0c;华为的数据消费已经不再局限于传统的报表分析&#xff0c;还要支持用户的自助分析、实时分析&#xff0c;通过数据的关联&#xff0c;支持业务的关联影响分析以及对目标对象做特征识别&#xff0c;进行特定业务范围圈定、差异化管理与决策等。…

安装android studio

记录一下安装android studio的过程&#xff1a; 1.首先安装android studio到某一文件夹后&#xff0c;在C盘用户目录下可以看到.android文件夹。C:\Users\22515\AppData\Local\Google目录下也会出现AndroidStudio2022.2文件夹。&#xff08;注意&#xff1a;用户名&#xff0c…

如何访问AWS私有网络中的RDS (Mysql)

文章目录 小结问题及解决连接问题如何使用本地的Mysql Workbench对RDS进行访问 参考 小结 在AWS私有网络中部署了RDS (Mysql), 尝试通过外网成功地进行了访问. 问题及解决 连接问题 在AWS私有网络中部署了RDS (Mysql), 进行外网进行访问碰到了各种问题. 以下连接超时&…

(七)STM32 NVIC 中断、优先级管理及 AFIO 时钟的开启

目录 1. 中断相关知识简介 1.1 什么是中断 1.2 什么是内中断、外中断 1.3 什么是可屏蔽中断、不可屏蔽中断 2. CM3 内核中断介绍 2.1 F103系统异常清单 2.2 F103 外部中断清单 3. NVIC 简介 3.1 NVIC 寄存器简介 3.2 NVIC 相关寄存器的介绍 4. 中断优先级 4.1 优先…