jmeter全面总结-8-2-jmeter实战-jmeter性能测试的策略
一,首先要知道你测试的关键业务场景,
首页
板块详情页
帖子详情页
发帖
回复
二,测试环境的配置:
硬件的:
web服务器:
机器核数:
内存:
硬盘:
数据库服务器:
机器核数:
内存:
硬盘:
软件的:
系统,Linux版本
Nginx
php
mysql
redis
生产环境和测试环境的差异分析:
三,测试原理和测试工具
使用jmeter
四,结果记录
五,测试策略
1,一直并发数加压,一直加压到tps不变动了,然后就可以了,这就是一个临界点
2,一直加压,看cpu的百分比,超过200%了,就可以了,这就是一个临界值,
3,测试的时候一定要关注数据库的性能,因为会有慢sql导致数据库cpu的使用率过高,这种就是优化的方向,
4,具体的性能慢,你能知道时间都消耗在哪里了吗?这需要性能监控才可以知道,
#######
性能测试方案
1,接口的单点测试
2,页面的测试,这就是多个接口了
3,场景的测试,这就是多个页面
影响因素
1,系统整体的流量,
2,这个页面返回的数据量,
测试方案:
1,逐渐加压的方式
2,一次并发的方式,这是并发测试,
3,持续时间的方式,这是负载测试,看这个负载的问题,
这他妈的分页太重要了,不然把所有的都查出来,10万个数据,
1,一般是从10,20,30,50,往后一直加压力,然后看tps,不往上升了,这就是tps,这是一个节点
2,还可以从10,20,30,50,往后一直加压力,然后看cpu和内存的使用,如果到100%了,说明资源耗尽了,这是一个节点,
3,测试性能的时候一定看web服务器,数据库服务器,redis服务器,所以你要看你测试的场景,处理的代码流程具体是什么,经过了哪些服务?
4,如果tps上不去了,但是web和数据库等服务器的cpu和内存并没有耗尽,说明还是有性能瓶颈的,而且是在代码的处理能力上,需要分析代码
5,分析代码的时候需要有抓手,所以你要知道每一个请求是耗时了多久,你要知道每一个线程的耗时多少,都是耗时在哪里了,还有慢sql的跟踪
6,如果95延时已经到了10几秒了,这就是有异常的了,不用再测试了,没有意义,
7,如果你压不上,还可能和带宽有关系,所以你最要申请一个专门的执行机,专门用来做性能测试,这样才有信服力,
8,
########