天猫双11页面服务容灾方案
会场活动页,承载了促销商品导流功能,是消费者的购物入口,在双11活动中的地位可谓重中之重。保障活动页的快速稳定可用,是非常非常重要的。这次天猫双11会场页面渲染由wormhole来承担(wormhole 本身会在后续的文章中详细介绍),下面介绍一下 wormhole 的容灾方案。
技术方案
动态降频
wormhole 主要消耗性能的地方就在模板引擎渲染这部分,在并发访问量大的情况下,频繁的模板渲染会导致系统负载急剧飙升,导致响应延迟。为了保证大并发量下,足够快速的响应,针对的做了动态降频方案,具体的见下图:
整个渲染策略就是,定时备份页面到 OSS 集群,每次请求过来,都会去判断当前系统Load是否过载,若果过载则直接读取上次备份的页面返回,而不使用模板引擎渲染,达到动态降低系统负载,快速响应的目的。
CDN 兜底
动态降频能够保证大部分情况下的快速响应;但是,如果 wormhole 集群全部当机,则也无能为了。为了确保双11万无一失,还得有一招后手。为此,我们做了一个兜底方案,见下图:
同样类似于第一个方案,也会定时备份页面到OSS集群,不同的是,这次备份到另一个异地的 OSS 机房,以防止 OSS 服务因不可抗力挂掉;如果发生了最极端的情况,源站全部挂掉,由当天的值班人员,手工切换CDN指向已经备份了的OSS文件,保障页面可访问。
监控
wormhole 基于 Node 平台开发,我们知道Node平台长期以来,对内存使用监控这块一直很薄弱;对线上服务内存泄露排查基本无从入手;Node 服务就像一个黑盒,只能祈祷不要出错,出错也只能使用万能的重启大法。为了弥补这一块,alinode 团队推出了监控系统,重点解决这些痛点问题。
总结
- 没有完美的方案,必须要结合具体场景做调整。必要时,人工干预也是需要的。
- wormhole 服务超级稳定,一条容灾方案也没有执行。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论