
双十一零点前后,技术群里最容易出现的一类消息,不是“网站彻底挂了”,而是“商品页能打开,优惠券领不到”“购物车能进去,提交订单一直转圈”“用户说钱已经扣了,订单却还停在待支付”。
这些消息有个共同点:网站看起来还在,交易做不成。
真实抢购流量、接口被刷、库存服务异常,都会出现类似表现。判断问题时,先要看用户卡在哪一步,再看是哪个接口出了问题。双十一的防护,也不能只看网站是否在线。商品页能打开,不代表登录、库存、下单和支付都正常。
预售开始后,活动页通常还能打开。真正容易出问题的,是领券、登录、验证码和活动报名接口。这些接口需要访问后端服务,请求一多就可能变慢。
现场表现 | 需要查看的内容 | 处理方向 |
|---|---|---|
活动页正常,优惠券一直领不到,按钮反复加载 | 领券接口的请求量和错误率 | 按账号、设备和IP限频 |
验证码迟迟收不到,或接口超时 | 短信调用量、请求来源 | 限制重复请求,保护验证服务 |
登录反复失败,页面跳回登录页 | 连接数、账号和设备行为 | 区分正常登录和异常调用 |
点击一次没有反应,用户重复提交 | 同一账号、设备或IP的重复请求比例 | 对重复提交单独限流 |
这类请求不一定都是攻击。真实用户同时抢券,也会形成短时间高并发。处理时不需要马上关闭整个活动页面,静态内容可以继续开放,领券和验证码接口单独限流,把异常请求挑出来,别影响正常用户。
直播画面没有中断,不代表整个直播交易链路都正常。视频流、弹幕、优惠券、商品卡片、购物车和订单接口,通常由不同服务承载。攻击者不一定要让直播画面停止,只要让商品卡片打不开,或者让下单接口持续超时,转化就会受到影响。
常见表现包括:
● 直播画面正常,商品链接打不开
● 弹幕延迟明显
● 直播间优惠券无法领取
● 商品卡片一直加载
这时要把视频播放和交易接口分开看。评论、点赞、排行榜等功能可以适当限速,登录、下单和支付要优先保证。如果所有请求都使用同一套拦截规则,可能会把正常用户一起挡掉。
这是双十一最容易引发投诉的情况。用户能看到商品,价格也正常。点击“立即购买”后,却不断收到库存不足、系统繁忙或提交失败的提示。
此时要看的不只是网页和带宽,还包括:
● 库存查询接口
● 库存扣减接口
● 订单创建接口
● 优惠计算服务
● 数据库连接池
● 消息队列
这些服务一旦同时承受大量请求,系统就可能出现排队、超时或连接耗尽。攻击者反复调用库存和下单接口时,表现也可能和正常抢购很像。因此,不能把订单失败直接归结为DDoS。库存同步延迟、数据库锁等待和订单服务异常,也会造成相同结果。
可以先把库存查询和订单创建分开限流,再通过队列控制下单速度。对同一账号、设备和IP的重复提交,也要单独观察。核心不是把所有请求都拦住,而是先让正常订单有机会完成。
支付环节出问题时,用户的反馈会更集中。有人已经完成付款,但订单还是待支付。有人看到页面超时,又点了一次支付。客服、支付团队和技术团队很快会同时收到投诉。
这种情况可能与支付回调有关,也可能是订单服务、消息队列或连接资源出现异常。DDoS攻击只是其中一种可能。
排查时,需要确认:
● 支付平台是否已经返回结果
● 回调接口是否超时
● 回调请求是否被安全策略误拦
● 订单服务是否出现积压
● 是否存在重复回调和重复提交
支付回调不能完全按照普通页面请求处理。它需要单独保护,并做好幂等处理。即使同一笔回调重复到达,也不能重复生成订单或重复扣款。
流量高峰过去后,如果网站仍然缓慢,不要急着认为系统会自己恢复。前一轮请求可能针对活动页和商品接口,后面又转向登录、订单查询、支付回调或管理后台。
还要注意一种情况:防护节点看起来正常,但源站的CPU、连接数和访问量仍然很高。此时需要检查是否存在绕过防护入口、直接访问源站的情况。
可以重点查看:
● 防护节点和源站收到的流量是否一致;
● 旧域名、测试域名和历史源站IP是否还在使用;
● 哪些接口的错误率没有随总流量下降;
● 异常请求是否从一个接口转移到了另一个接口;
如果源站仍然允许公网直接访问,前面的流量清洗可能被绕开。源站应尽量只接受可信节点的回源请求。处理上要做两件事:一是把源站限制为只接受可信节点的回源请求,关闭不必要的公网端口;二是按接口重新分配限流规则,因为攻击目标已经从活动页转向登录和订单查询这类接口,沿用原来的策略往往拦不住。
双十一期间,流量增加本身并不能说明正在遭受攻击。可以先通过几个现象做初步判断。
现象 | 可能原因 | 还要排查什么 |
|---|---|---|
全站变慢,带宽和连接数同时上升 | 流量型或协议层攻击 | 是否超过正常活动峰值 |
带宽正常,但某个API请求暴增 | CC或API请求攻击 | 是否集中在库存、领券或下单接口 |
请求量不高,但数据库持续满载 | 业务资源瓶颈 | 是否存在锁等待、慢查询或队列积压 |
只有登录、领券或下单失败 | 应用层攻击或接口故障 | 账号、设备、IP和请求路径 |
防护节点正常,源站资源异常 | 源站被绕过访问 | 旧IP、测试入口和回源限制 |
这个判断不能完全代替安全分析,但能帮助团队先找到排查方向。表里的原因都只是“更接近某一类”,不是结论。大促当天没有时间做完整取证,先按最可能的方向动手,同时保留日志和流量记录,事后可以回头核对。
大促期间,不可能让所有功能一直保持完整状态。需要先分清哪些业务不能停。
业务模块 | 优先级 | 处置方式 |
|---|---|---|
登录、下单、支付、支付回调 | 最高 | 优先保障资源,策略单独配置,不做统一限速 |
商品详情、库存查询、下单前的商品校验 | 高 | 保住可用,压测过的接口不轻易降级 |
售后入口、订单状态查询 | 中 | 可以延后处理,但不要关闭入口 |
推荐、评论、排行榜 | 低 | 可以限速或暂时关闭 |
部分优惠活动和互动功能 | 低 | 可以降级为静态展示 |
非核心统计和展示模块 | 低 | 可以直接关闭 |
处理顺序可以简单一些,先确认是全站异常还是单个接口异常,再看带宽、连接数、请求量、接口延迟和错误率。如果问题集中在某个接口,优先限制这个接口,不要直接封禁整个网站。攻击流量清理后,也不要马上撤掉所有策略,至少要观察一段时间,确认请求量和接口状态已经恢复。
双十一流量一上来,防护不能只靠临时扩容。OgCloud的DDoS防护覆盖实时流量检测、边缘节点过滤、源站IP保护、弹性防护和流量监控等环节,帮助企业更快识别异常请求,减少攻击流量对源站的影响,让正常用户稳定访问,核心订单顺利完成。
选型时,可以直接问服务商几个问题:
● HTTP和API请求能不能单独设置策略
● 源站能不能限制直接访问
● 清洗策略什么时候生效
● 误伤正常用户后怎么调整
● 能不能看到攻击接口和被清洗的流量
● 攻击结束后,规则如何恢复
这些问题比单独比较带宽数字更接近双十一当天的实际情况。
不一定。双十一本身就会出现真实流量峰值。要结合请求路径、重复访问比例、接口错误率和系统资源一起判断。
有可能,但不能直接确定。库存服务、订单服务、数据库连接池和消息队列出问题,也会造成相同表现。
如果支付入口经过防护节点,高防IP可以承接到达该入口的流量。但它不能代替支付回调校验、接口限流、幂等和队列处理。支付业务仍然需要单独保护。
攻击不只在双十一。618、暑期和双 11、圣诞都列为高发窗口,年末几个月涨得最明显。长期价值不在防住某一次,在于攻击来的时候你已经有现成的链路可以切。
可以尝试,但风险会更高。域名解析、源站限制、回源策略和接口规则都需要验证。临时接入时,不能只增加带宽,还要先确认防护入口和源站是否存在绕过路径。
双十一的风险,不一定表现为网站彻底打不开。有时商品还能看,订单却提交不了。有时直播还在播,购物车已经打不开。还有时钱已经扣了,订单状态却迟迟不变。所以,排查DDoS时不能只看总流量,也不能只看首页是否正常。要沿着登录、领券、库存、下单和支付这条链路往下看。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。