性能测试day01_性能基本概念

  其实第一次接触性能是15年的时候,懵懵懂懂的被领导拉去做第一次做性能压测,如今有机会重新听一下云层大大讲解性能,于是打算以此博客记录下整个学习的过程,如若有不同意见者可以在下面留言指出,也欢迎大家一起来探讨性能测试。

进入今天的主题,今天的主要目的就是构建整体的思想,那么第一个问题来了,什么是性能测试?简单的来讲是不是就是性价比测试(这个本质上来讲是不是就是对比单位价格内的处理能力),性价比准确的来讲又是软硬件的投入对TPS的影响。

请看下图的一个思路过程:

  什么是性能问题?时间性价比的问题,具体到我们系统来讲是不是就是访问量的问题?

  那性能测试做什么呢?目前来讲有两种,第一种是证明满足需求的过程(性能需求->验证需求->给出结论),第二种是获取相关指标提供决策(设定方案->获取指标->决策判断依据),大部分人可能都是第一种。

  测试系统满足性能需求需要经历的阶段如下:

      1.性能需求是啥?(大部分性能问题没法做就是需求问题没弄清楚)

      2.测试方式是啥?(第一点性能方案的设计,第二点就是工具方法)

      3.结果怎么收集?(监控命令和监控平台如:zabbix、普罗米修斯)

      4.报告怎么编写?

  所以说性能测试就是为了验证在一定环境下系统满足性能需求的测试,主要验证性能指标(响应时间、吞吐量、资源利用率)。

  由于网上对这几个性能指标众说纷纭,而且不一定准确,这边来重新梳理下:

  • 响应时间:分为事务响应时间(做一件事情所产生的所有时间开销,包括前后的等待时间等)和平均响应时间(某一个时间段内的响应时间分布趋势,这里有有两个点,一个是时间段的长度还有个就是时间段的位置;TPS也不一定是每秒的事务个数,取决于工具切的时间段),一般用平均响应时间作为参考依据而不是事务响应时间。
  • 吞吐量:是否以秒为单位以及单位下事务分布的情况?工具求出来的TPS不能完全以秒为单位!
  • 资源利用率:占用资源的百分比(可能存在某个节点的瓶颈但总占用率不高,例如多核CPU中的一个占用很高)和数量制(不太明确的总量,比如IO的处理能力(每秒字节数。不是百分比),以数量来表达,此时我们就需要了解每个计数器的概念和表达方式)。

总的来讲,根据这些数据了解系统的工作情况,最终给出分析调优的建议和总结报告,而分析调优的建议则取决于自身的眼界,所以说性能测试是一项需要掌握知识面非常广的测试项目。(千万别放弃哈!)

原文地址:https://www.cnblogs.com/leixiaobai/p/9256363.html

时间: 2024-11-08 22:00:08

性能测试day01_性能基本概念的相关文章

性能测试一些相关的概念

1.压测任务需求的确认 确定好工作范围:首先分析压测最容易出现瓶颈的地方,有目的的进行测试.用户更关心整个系统中哪个环节的性能情况也会影响工作范围. 2.概念 压力测试 通过不断加压被测系统,直到性能指标达到饱和,这种测试能够找到系统的极限,为系统调优提供数据性能测试 通过模拟生产运行的业务压力量和使用场景组合测试系统的性能是否满足生产性能要求配置测试 通过测试找到系统各资源的最优分配原则并发测试 测试多个用户同时访问一个应用,同一个模块或者数据是否存在死锁或者其他性能问题 # 数据库死锁:多个

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

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

性能测试的几个概念区分

随着单位时间流量的不断增长,被测系统的压力不断增大,服务器资源会不断被消耗,TPS值会因为这些因素而发生变化,而且符合通常情况下的规律.以下是一个性能测试压力变化模型图: 说明: a点:性能期望值 b点:高于期望,系统资源处于临界点 c点:高于期望,性能处于拐点 d点:超过负载,资源不够用,系统处于崩溃 通过如上模型图中的情况,我们大致可以将当前性能测试分成如下4类: 1.性能测试 2.负载测试 3.压力测试 4.稳定性测试 >性能测试 以上模型图为准则,在a点与b点之间的系统性能,表示以性能目

性能基本概念转载

socket API 如果熟悉linux socket编程的同学阅读完了第一章, 一定有一种说不上来的别扭感觉.因为通常情况下, 当我们讨论socket的时候, 我们一般指的是操作系统提供的网络编程接口里的那个socket概念. 而在ZMQ中, 只是借用了这个概念的名字, 在ZMQ中, 我们讨论到socket的时候, 一般指代的是调用zmq_socket()接口返回的那个socket, 具体一点: zmq socket. zmq socket比起linux socket来说, 逻辑理解起来比较类

性能基本概念

性能测试关注点: 1.RT 响应时间2.并发数3.TPS 服务器每秒能处理多少请求4.硬件(cpu.内存.io.网络)5.sql 的执行效率6.数据库连接池的使用情况7.数据库的缓存命中率8.系统是否稳定9.web 容器线程池的使用情况10.代码执行效率11.JVM 使用情况(FGC 频率.内存泄漏) 数据库连接池:MAX = 10:同时请求数最多10个,超过10个则需要排队 数据库缓存命中率:在缓存中查找到的sql数 / 数据库查询总数 web 容器线程池:client 端发送请求到web端,

性能测试-MySQL性能查看(转)

mysql查看数据库性能常用命令 mysql> show global status; 可以列出MySQL服务器运行各种状态值,另外,查询MySQL服务器配置信息语句: mysql> show variables; 一.慢查询  mysql> show variables like '%slow%';  +------------------+-------+  | Variable_name | Value |  +------------------+-------+  | log_

性能测试之主要概念

什么是软件性能?: 交互式系统:以用户感受到的响应时间来描述系统的性能 非交互式系统(银行业务处理):响应时间只系统对事件产生的响应所需要的时间 如何评价性能的好坏: 用户视角:对于用户,最终使用者而言评价系统的性能好坏只有一个字——“快“.最终用户并不需要关心系统当前的状态——即使系统这时正在处理着成千上万的请求,对于用户来说,由他所发出的这个请求是他唯一需要关心的,系统对用户请求的响应速度决定了用户对系统性能的评价.简单点就是,用户单击一个按钮,发出一条指令或是在web页面上单击一个连接考试

性能测试分析与性能调优诊断--史上最全的服务器性能分析监控调优篇

一个系统或者网站在功能开发完成后一般最终都需要部署到服务器上运行,那么服务器的性能监控和分析就显得非常重要了,选用什么配置的服务器.如何对服务器进行调优.如何从服务器监控中发现程序的性能问题. 如何判断服务器的瓶颈在哪里等 就成为了服务器性能监控和分析时重点需要去解决的问题了. 1     服务器的性能监控和分析 1.1      Linux服务器的性能指标监控和分析 1.1.1       通过vmstat深挖服务器的性能问题 1.1.2       如何通过mpstat 分析服务器的性能指标

软件性能测试技术树(二)----Linux服务器性能

全图: 测试目的: 测试范围&性能指标: 测试与生产环境服务器配置不同的处理方法: 实时CPU监控: 实时内存监控: 实时网络监控: 实时磁盘监控: 万能命令:  Linux下的进程追踪命令: Linux监控命令: Linux定时任务: 以下来自百度百科 ---- 软件性能测试 响应时间 我把"响应时间"的概念确定为"对请求作出响应所需要的时间",把响应时间作`为用户视角的软件性能的主要体现.响应时间划分为"呈现时间"和"系统响