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

服务端压测系列:

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

压测步骤

  • 一般来说,一次完整的线上压测包括以下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的次数和耗时

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

7.优化

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

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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 172,861评论 25 708
  • 用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有什么料? 从这篇文章中你...
    hw1212阅读 12,842评论 2 59
  • 前言 随着业务的快速发展我们日常遇到的系统性能压力问题也逐渐出现,甚至在部分场合会遇到一些突发的营销活动,会导致系...
    monkey01阅读 29,326评论 4 46
  • 项目概况: 龙岗区河道管养三标段管养的河道分布于园山、横岗2个街道,共计17条河流,总长度46.1公里,分属于龙岗...
    H__Zzzzzz阅读 213评论 0 0
  • 今天早上接到电话,要把广播局房子里东西搬出来。开始以为是拆迁,马上想到要把我们结婚时买的沙发,电视柜拉回来...
    一路凡花阅读 501评论 0 1