性能测试一些相关的概念

1.压测任务需求的确认

确定好工作范围:
首先分析压测最容易出现瓶颈的地方,有目的的进行测试。
用户更关心整个系统中哪个环节的性能情况也会影响工作范围。

2.概念

压力测试 通过不断加压被测系统,直到性能指标达到饱和,这种测试能够找到系统的极限,为系统调优提供数据
性能测试 通过模拟生产运行的业务压力量和使用场景组合测试系统的性能是否满足生产性能要求
配置测试 通过测试找到系统各资源的最优分配原则
并发测试 测试多个用户同时访问一个应用,同一个模块或者数据是否存在死锁或者其他性能问题

# 数据库死锁:多个进程访问同一个数据库,每个进程需要的死锁都是其他进程所需要的,由此造成每个进程都无法执行下去,

       简单的来说:进程a等待进程b释放它的资源,进程b又等到进程a释放塔的资源
极限测试 测试系统在一定饱和情况下,系统处理会话能力,以及系统是否会出错
容量测试 测试系统能够承受住的最大的会话能力
可靠性测试 通过对系统加载一定量业务的压力,运行一段时间
失败测试 对于有冗余备份和负载均衡的系统,通过这样的测试来检验如果系统局部发生故障用户是否能够继续使用系统,用户将受到多大的影响。

固定接口参数进行压测还是进行接口参数随机化压测?
要求支持多少并发数?
TPS(每秒钟处理事务数)目标多少?响应时间要达到多少?
压服务器名称还是压服务器IP,一般都是压测指定的服务器

jmeter 压测设置

线程数:并发数量,能跑多少量。具体说是一次存在多少用户同时访问
Rame-Up Period(in seconds):表示JMeter每隔多少秒发动并发。理解成准备时长:设置虚拟用户数需要多长时间全部启动。如果线程数是20,准备时长为10,那么需要10秒钟启动20个数量,也就是每秒钟启动2个线程。
循环次数:这个设置不会改变并发数,可以延长并发时间。总请求数=线程数*循环次数
调度器:设置压测的启动时间、结束时间、持续时间和启动延迟时间。

压测结果查看
??运行完后,聚合报告会显示压测的结果。主要观察Samples、Average、error、Throughput。
Samples:表示一共发出的请求数
Average:平均响应时间,默认情况下是单个Request的平均响应时间(ms)
Error%:测试出现的错误请求数量百分比。若出现错误就要看服务端的日志,配合开发查找定位原因
Throughput:简称tps,吞吐量,默认情况下表示每秒处理的请求数,也就是指服务器处理能力,tps越高说明服务器处理能力越好。
压测结果的分析

有错误率同开发确认,确定是否允许错误的发生或者错误率允许在多大的范围内;

Throughput吞吐量每秒请求的数大于并发数,则可以慢慢的往上面增加;若在压测的机器性能很好的情况下,出现吞吐量小于并发数,说明并发数不能再增加了,可以慢慢的往下减,找到最佳的并发数;

压测结束,·登陆相应的web服务器查看CPU等性能指标,进行数据的分析;

最大的tps:不断的增加并发数,加到tps达到一定值开始出现下降,那么那个值就是最大的tps。

最大的并发数:最大的并发数和最大的tps是不同的概率,一般不断增加并发数,达到一个值后,服务器出现请求超时,则可认为该值为最大的并发数。
压测过程出现性能瓶颈,若压力机任务管理器查看到的cpu、网络和cpu都正常,未达到90%以上,则可以说明服务器有问题,压力机没有问题。
影响性能考虑点包括:数据库、应用程序、中间件(tomact、Nginx)、网络和操作系统等方面。

转载自:https://www.cnblogs.com/leiziv5/p/9055804.html#undefined

原文地址:https://www.cnblogs.com/fuxinxin/p/9543758.html

时间: 2024-10-12 00:35:08

性能测试一些相关的概念的相关文章

常用SQL操作(MySQL或PostgreSQL)与相关数据库概念

本文对常用数据库操作及相关基本概念进行总结:MySQL和PostgreSQL对SQL的支持有所不同,大部分SQL操作还是一样的. 选择要用的数据库(MySQL):use database_name; help show; 显示可用的数据库列表:show databases; 显示一个数据库内可用的表的列表:show tables; 显示表列:show columns from 一个表名; /describe 表名;  示例:show columns from customers;    desc

linux设备驱动归纳总结(一)内核的相关基础概念【转】

本文转载自:http://blog.chinaunix.net/uid-25014876-id-59413.html linux设备驱动归纳总结(一):内核的相关基础概念 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 一.linux设备驱动的作用 内核:用于管理软硬件资源,并提供运行环境.如分配4G虚拟空间等. linux设备驱动:是连接硬件和内核之间的桥梁. linu

理解嵌入式开发中的一些硬件相关的概念

做嵌入式系统开发,经常要接触硬件.做嵌入式开发对数字电路和模拟电路要有一定的了解.这样才能深入的研究下去.下面我们简单的介绍嵌入式开发中的一些硬件相关的概念. 电平(Level) 在数字电路中,分为高电平和低电平,分别用1和0表示.一个数字电路的管脚,总是存在一个电平的,要么高要么低,或者说要么1要到0(其实,还有另一种状态,后面会提到). 总线(Bus) 在嵌入式系统中一定会有一块处理器芯片,此外,还有其它的芯片作为外部设备(后面简称外设),这些芯片与处理器协作实现产品的功能.复杂的产品往往是

性能测试day01_性能基本概念

其实第一次接触性能是15年的时候,懵懵懂懂的被领导拉去做第一次做性能压测,如今有机会重新听一下云层大大讲解性能,于是打算以此博客记录下整个学习的过程,如若有不同意见者可以在下面留言指出,也欢迎大家一起来探讨性能测试. 进入今天的主题,今天的主要目的就是构建整体的思想,那么第一个问题来了,什么是性能测试?简单的来讲是不是就是性价比测试(这个本质上来讲是不是就是对比单位价格内的处理能力),性价比准确的来讲又是软硬件的投入对TPS的影响. 请看下图的一个思路过程: 什么是性能问题?时间性价比的问题,具

oralce中相关的概念整理

[数据库名]  概念:就是一个数据库的标识,作用等同于我们的身份证的作用,如果一台机器上安装了多个数据库,那么每个数据库都会有一个数据库名称对应,这些数据库名称在数据库被创建的时候,数据库名称也会被写入控制文件中去,在控制文件中是以二进制的文件存储,我们如果要修改的话就不是太方便,所以我们在起数据库名称的时候尽量考虑清楚. 作用:数据库名称是在创建数据库,安装数据库,创建数据库控制文件,修改数据结构的时候或者备份数据库的时候会使用到. 我们如果想在sqlplus中查看当前连接的数据库名称: 方法

爆栈之一般IT项目管理相关基本概念杂谈(备案)

PS,说到IT(PM)项目管理,还要提下职场两点小领会: 1.选择比努力重要: 2.位置比能力重要. 由于现在IT项目管理一般已下面三种角色划分: 1.产品经理,以产品为导向---对商业模式较为欠缺: 2.项目经理,以项目为导向---通晓一般模式,有一定体会: 3.技术经理,以技术为导向---有较深度和广度积累: 只是大部分公司都没有分那么清晰,大都是身兼多个角色,美其名曰:项目经理.技术总监.部门经理等等,当然也是根据实际情况的侧重不同而已~ IT项目管理,其实也是两个关键: 1.IT,即针对

关于性能测试几个名词概念的说明

什么是性能测试 在一定的负载下,系统的响应时间等特性是否复合性能要求,从某些角度来说,其实是功能测试的一种 负载测试 在一定的软硬件条件.网络条件下,运行一种或多种业务,不同数量的虚拟用户访问系统,不断加压,直到超出系统预定的指标或部分资源达到饱和,不能加压为止.打个比喻就是在保证不翻船的情况下,测试最大用户数 压力测试 一定条件下,不断加大虚拟用户量,对系统加压,查看系统是否可以正常工作.打个比喻就是,测试翻船时候的最大人数 容量测试 一定条件下,对数据库制造不同的数据,在一定的虚拟用户下,确

Java-Maven(三):Maven相关的概念:Maven坐标、Maven仓库、Maven声明周期

之前通过学习对maven命令有了部分了解,但是只是知道maven是用来做什么.但到目前位置还不足以全面的了解maven,为更全面的了解maven,需要学习以下几个概念:Maven坐标.Maven仓库.Maven生命周期. Maven坐标 maven坐标概念:每个构件都有自己的一个标识(唯一的),它由groupId,artifactId,version等信息组成,因此maven就可以对构件进行版本控制.管理. 备注: groupId :公司名称或者组织名称: artifactId:项目名称: ve

线性表的相关基础概念

一个线性表是由n个数据元素构成的有限序列,其特点是数据元素之间存在着线性关系.在计算机中表示这种关系的两种不同存储结构是顺序存储结构和链式存储结构. 1.顺序表 顺序表是在内存中用一组地址连续的存储单元依次存储线性表的数据元素,借助数组来实现.顺序表中数据元素的逻辑关系通过其"存储位置相邻"来表示. 对于顺序表,主要有初始化.建立.销毁.插入.删除.按值查找.等基本操作.插入和删除操作约需移动一半的元素,时间复杂度为O(n). 2.链表 除了常用的单链表外,还有循环链表.双向链表.双向