导读:随着疫情防控模式的迭代,健康码访问DAU逐渐趋于下跌,意味着健康码将逐步完成历史使命,见证着疫情的结束。本文特邀腾讯研发工程师李雄政将从技术架构、可观测体系、运营保障体系等运维体系多方面,总结回顾健康码业务运营过程中的保障技术手段。
1.业务背景
疫情三年,奥密克戎已是强弩之末,疫情终将过去。历经数个阶段的迭代,腾讯健康码产品服务于十余个省份的居民,数亿用户、数百亿次亮码。有效助力保障公共卫生安全。全国健康码共累计PV2k多亿,亮码1k多亿,最大省份的健康码用户量超过1亿,DAU过千万。
随着疫情防控模式的迭代,健康码访问DAU逐渐趋于下跌,意味着健康码将逐步完成历史使命,淡出历史舞台。本文就曾经在健康码业务运营过程中的保障技术手段进行了回顾,欢迎有兴趣的读者在评论区一起探讨。
2.技术架构体系
一个稳定的架构是设计与运维出来的,为了达到稳态运行,设计上考虑了以下几个方面:
1)选用合适的云原生产品
健康码本身是要求高可用、高并发的应用,为了满足业务稳定上线、快速上线的需求,我们采用了腾讯云的公有云/私有化产品解决方案。以下是健康码上线时碰到的几大类问题:
由于系统需要大容量的承载能力,导致地方政务云资源供给能力不足。表现如公网出口防护能力不足(如经常性面对境外DDOS攻击/CC攻击),IDC出口设备每秒新建连接数不够等。我们采用了DDoS高防包/waf/ecdn等方案来满足。DDoS高防包与Waf产品有效抵挡住境内外的DDoS攻击、Web攻击、入侵、漏洞利用、挂马、篡改、后门、爬虫等网站及 Web 业务安全防护问题;ECDN产品通过静态资源缓存有效降低混合云场景下政务云入口新建连接数、带宽。也提升了用户的访问体验。
疫情的需求迭代较快,如果从头开始开发产品,时间上不允许。腾讯云TCB产品做为一站式云原生解决方案,更加贴近小程序/Web 应用开发场景,使开发人员能快速构建完整项目、针对场景快速优化定制且集中管理,各产品间无需耗费时间精力分别配置与打通,无需切换多款云产品的控制台进行使用。
云产品拥有较大的共享资源冗余,能够快速达成大容量,同时深度采用云原生产品,能够带来较大程度的成本节约。例如采用scf云函数,无需在购买云服务器的情况下运行代码,使用腾讯云的能力弹性、安全地运行代码。无需冗余资源闲时运行成本买单,同时因为云原生产品具有天然的跨可用区容灾能力,基于云原生的两地三中心架构设计,基于腾讯云公有云通常可以满足的高可用能力如:从负载层采用CLB的跨可用区高可用能力进行可用区容错;应用层TSF/TKE/CKAFKA的多可用区高可用能力容错;存储层采用TDSQL多可用区部署及主从同步能力满足高可用与容灾。