服务端压测总结篇一:如何完整的做一次压测

服务端压测系列:

服务端压测总结篇二:压测中的疑惑

压测步骤

  • 一般来说,一次完整的线上压测包括以下7个步骤

1.梳理高峰业务场景

可以按照一些问题描述模板比如5W2H来梳理业务场景,例如:
场景1:2018年11月11日00:00~01:00,共计xx万个用户同时操作xx。
场景2:每天xx时间段,xx系统会轮询调用xx服务xxxx次。

2.明确压测目标

压测目标制定可以
2.1、根据业务场景评估
2.2、根据历史流量峰值评估

TIPS:制定目标时需要留一些Buffer

3.准备压测数据&链路改造

准备压测数据一般有几种方式,根据具体场景可以:
1、直接DB建数据
2、通过业务接口建数据
3、线上流量COPY
链路改造最主要有:
1、接口免登(http接口压测会用到)
2、写接口对压测流量可重复执行

4.接口单元测试

接口单元测试需要验证压测链路是否通,如果有影子/隔离环境,看流量是否打到正确的环境中去。

5.小流量试压

实际压测时希望能尽快加压到目标QPS,小流量试压可以提前发现一些阻塞性问题风险并解决掉

比如我在线上环境试压一个业务接口的时候,当QPS达到30的时候,发现对外部接口调用的QPS已经达到了2500+,如果不经过试压直接大流量压测,很有可能会拖挂依赖的服务。

6.压测

压测前通知到相关运营、业务、开发、测试同学

压测中:

1.逐步加压到目标QPS。
2.在加压过程中,观测并记录发现的问题,如果出现阻塞性问题,停止压测。
观测指标
系统指标:CPU使用率、内存使用率、Load
服务指标:QPS、RT
JVM:GC的次数和耗时

压测后发出压测报告,压测报告对于目标和结论尽量一句话表述出来

服务端压测总结篇一:如何完整的做一次压测_第1张图片

7.优化

跟开发同学已经评估压测发现问题和优化方案,准备下一轮压测吧

TIPS:线上环境的服务端压测最好在业务低峰时间段、压测隔离环境中进行

你可能感兴趣的:(服务端压测总结篇一:如何完整的做一次压测)