性能测试
一、基础概念
只做关键业务的性能测试,系统上的帮助信息不用做性能测试
性能评估—加压----bug和瓶颈出来了—调优----验证bug、再跑
并不是每个系统都需要做性能测试
1、性能测试指标:多(多用户、并发)、快(响应时间)、好(稳定性)、省(资源)、思考时间(人用系统、不是机器)
1.1、响应时间是客户端到客户端的,客户能感知的(不管客户端—服务器 再从服务器—客户端) 能接受的响应时间<=2s 5s勉强 8s不能接受
1.2、并发数:用户的概念、
Eg:一千万个用户注册了一个网站
没有经过初始化的性能环境不能用作性能测试环境,环境需要贴合现场真实环境(比如一千万用户产生的几千万的数据,但是测试环境就几条数据,几千万的数据对磁盘有很大的考验,直接影响响应时间)
海量的数据,可以把现场备份过来;数据比较敏感,可以使用脚本构造海量数据
在线用户数,可能登陆了没有行为,没有行为就对系统没有压力。在线用户数最主要跟内存有关系,因为登陆进去需要保持会话,而session是放在内存中的,如果内存太少,可能会将登陆的用户踢出去。
跑性能前需要初始化环境即warm up 热身,需要把数据从磁盘跑入内存(数据先入磁盘,再存入内存,数据从内存比从磁盘中取然后被cpu执行快)
操作的并发:1、同一时间同一操作如秒杀需要测试 2、同一时间不同的操作也需要操作 所以存在使用多个jmeter多套基本测试
超过500个用户后的响应时间超长,可能就到了性能拐点500
吞吐量、一般关注吞吐率TPS 每秒钟处理的事务数(或请求)
二、一个简单的压测实例
https://blog.****.net/yaorongke/article/details/82799609