昨天半夜正赶项目,手机突然叮叮咣咣响个不停。我一看业主群炸锅了,全都在骂行程码加载不出来,超市门都进不去。我寻思着这玩意儿两年都没崩过,咋突然躺平了?
一、上手先查监控大盘
我鞋都没穿就冲到电脑前登录服务器监控。好家伙!流量曲线直接竖着往上蹿,活像根避雷针。平时稳稳当当的QPS(就是每秒访问量)从几千猛冲到几十万,Redis缓存集群直接飙红,活像被煮熟的虾。
- 数据库连接池爆满警告弹了二十多条
- CDN带宽峰值比双十一还高一截
- 负载均衡器在疯狂踢掉超时请求
二、抽丝剥茧找病灶
第一反应是挨打了?赶紧抓包看流量来源。结果全是正经三大运营商的IP,各省网关都在嗷嗷叫。这时候手机突然收到政策调整通知——原来全国统一取消星号了!
这下破案了:全国人民同时刷新行程卡的壮观场面,比顶流明星官宣结婚还热闹。我瘫在椅子上直拍大腿:
- 服务器扩容机制太老实,每分钟才扩容一次
- 缓存预热策略没预估到海量冷启动
- 短信验证码服务被挤兑得口吐白沫

三、手忙脚乱的抢救夜
凌晨三点把运维小哥从被窝里薅起来。这兄弟睡眼惺忪问:“哥咱扩多少台?”我咬着后槽牙吼:“库存里有多少吞多少!赶紧把数据库只读副本全挂上!”
忙到天擦亮才喘口气:
- 临时把验证码改成滑动拼图(结果大爷大妈投诉更凶了)
- 把行程查询接口响应数据砍掉三分之一
- 给各省网关设了不同优先级的漏斗过滤
四、血泪换来的教训
蹲在服务器前面啃煎饼果子的时候越想越憋屈。早知道政策调整比黑客攻击还猛,就该把系统当婚庆公司来准备:
- 扩容脚本得改成秒级响应,跟追星族抢票一个速度
- 搞个“假服务器”专门扛第一波洪峰
- 把全国用户分300个批次慢慢放行
看着监控图里慢慢躺平的曲线,突然收到老妈微信:“儿子,我菜市场门口刷了半小时码,保安让我下回带个马扎来排队...” 得,下午还得教老太太用离线码,这届码农真难当!

