压测全称为压力测试,是确立系统稳定性的一种测试方法,通常在系统正常运作范围之外进行,以考察其功能极限和隐患。
在开发接口或者功能点完成后,就需要对接口或功能点压力测试,测试出接口的极限以应对较大并发,举一个最直接的例子:淘宝双十一购物节,2018年淘宝交易创建峰值达到49.1万笔/秒,而在双十一之前淘宝都要对系统进行压测,看是否能够抗住每年创新高的并发!
大白话:不停地请求服务的接口,设置每秒的请求量以及持续时间,看看什么时候服务开始处理失败,从而得出服务的性能指标。
准备数据用于压测的时候使用
??录制任务 http请求的录制 rpc请求的录制 ?3.压测参数配置 ??压测类型 普通压测(普通循环播放流量) 调试(单次流量播放,一般用于调试链路是否接通) 递增(设置压测的多个阶段,每个阶段配置不同的qps以及持续时长) ?配置 变量配置(单是流量录制是不够的,特殊的接口(比如关注行为)需要变化请求的参数,因此需要支持变量配置) 自增变量 设置起止值 设置步长 文件变量 读取变量列 时间变量 对当前毫秒戳做加减操作 计算变量 uuid 区间random 预定义变量(就是写死一个值) 请求配置 指定接口与方法/url 指定机器 超时时间 变量 指定配置好的变量 压测配置 初始qps 期望最大qps 词表配置 循环回放流量录制中的流量 资源隔离 DB隔离 缓存隔离 MQ隔离 静默期(那个时间段不可以进行压测) ?4.保护策略配置不同的监控项以及异常的处理策略:比如停止压测或者降低压测流量等
??db保护策略 配置db的告警阈值 告警之后自动降低指定的qps或者停止压测 ?机器保护策略 监控cpu gc 内存等等等等 降低qps或者停止 ?服务保护策略 监测请求的响应情况 降低qps或者停止 ?5.监控配置不同的监控项用于判断性能瓶颈
??客户端响应情况监控 qps rt 错误率 ?服务端监控#### 业务日志 机器 cpu 线程池 服务接口等待队列大小等 ?四、压测报告 ??需要输出压测报告用于分析和记录 各个监控项的指标 压测结果的指标 等等 ?今天为大家简单列举了一些压测的知识点,以后有时间再为大家详细介绍哦,欢迎一键三连!!!