← 返回文章列表
解决方案 3 分钟阅读 炬鲸团队

电商大促可观测性:从压测基线到实时告警的完整方案

面向电商技术团队的大促可观测方案:压测定基线、关键链路全量追踪、按秒聚合的实时告警、容量弹性联动,以及大促前中后三个阶段的执行清单。

大促的问题不是“看不过来”,是“来不及看”

大促流量是平时的几倍到几十倍,而且集中在秒级爆发。平时靠翻日志、看大盘能定位的问题,在峰值期根本没有时间做——等你打开面板,流量高峰已经过去了,或者已经造成了资损。大促可观测性的目标是:把“事后翻日志”变成“异常发生的下一秒就知道”。

压测定基线,别靠猜

大促前最重要的动作是压测,但压测不只是“能不能扛住”,而是产出基线。把目标 TPS 压到预期峰值的 1.2 倍,记录下每个核心接口在峰值下的 P99 延迟、错误率、数据库连接数、缓存命中率。这些数字就是大促当天的告警阈值来源——不是拍脑袋定的 90% CPU,而是压测里真实测出来的水位。

压测数据直接导进 OBSERVE,和线上数据做对比:线上某接口延迟突然偏离压测基线 30%,就是异常信号。

关键链路全量追踪

平时 Trace 采样 5% 就够了,大促期间对核心链路(下单、支付、库存)切到 100% 采样。成本确实上去了,但大促就几天,换来的是任意一笔订单都能还原全链路。配合尾采样:慢请求和出错请求 100% 保留,普通请求按比例抽样,兼顾成本和排查能力。

按秒聚合的实时告警

大促的告警不能用分钟级。一分钟 3000 单的场景里,延迟从 50ms 涨到 500ms 只要 30 秒,分钟级聚合早就错过了。OBSERVE 支持秒级聚合,把下单成功率、支付耗时、库存扣减这三个黄金指标按 5 秒窗口滚动,阈值用压测基线,触发即电话通知。

告警分层照旧:P0(下单/支付链路不可用、成功率跌破阈值)直接电话;P1(降级、队列积压)短信 + 群;P2 记录。但大促期间 P0 的响应要求是秒级,值班人收到电话的同时,告警里已经附带了当时的高延迟 trace 和日志快照,打开就能定位。

容量与弹性联动

可观测系统还要回答一个容量问题:什么时候加机器。把集群 CPU、连接池、队列深度做成趋势看板,提前设扩容阈值——比如网关 CPU 连续 5 分钟超 70%,触发自动扩容。这个阈值同样来自压测,不是经验值。

大促执行清单

  • 前 7 天:压测并导出基线,检查告警规则、值班表、静默窗口;
  • 前 1 天:采样率切到全量,验证告警通知链路能打通(发测试告警);
  • 当天:值班盯着实时大盘,P0 告警按秒响应;
  • 后 1 天:采样率切回 5%,归档大促数据,做复盘,把新发现的水位更新回基线。