一年前,中国还笼罩在疫情的阴影之下。
全国各地相继沦陷,感染人数与日俱增。面对未知的病毒,骤然间,举国禁足闭户,生产暂时停摆。
北京,中国的首都。
由于是政治经济交通枢纽,随着各种人员的往来出入,初期疫情逐渐蔓延,有些社区防疫措施也不尽完善,出入证、登记表、核酸检测,每次进出都要花时间登记,填写,费时费力。
同时,复工复产又成了另一个亟需解决的任务,被逐渐提上日程。
如何才能在有效控制疫情的情况下,尽快让这座沉寂的城市焕发生机,安全有序地复工复产呢?
“北京健康宝”诞生了。
北京健康宝”是一个方便个人查询自身防疫相关健康状态的小程序,查询结果可为复工复产、出入公共场所等场景的防疫相关健康状态参考 。
21年3月1日是北京健康宝上线一周年,这一年,它累计完成48亿次健康状态查询,涉及约5633万人,累计生成超过200万个登记簿二维码,个人累计扫码约16亿次。
怎么做到的?除了北京健康宝团队强大的实力外,其背后,腾讯云数据库TDSQL也功不可没。
1
Part 1 破敌似箭——业务快速交付
3天,72小时,4320分钟。
时间回到一年前,临危受命的健康宝团队,从确切接到需求到应用上线,仅剩3天。
这么急切也不是没有道理,晚上线一秒,就多一份隐患,因此,这次任务没有退路,行也得行,不行也得行。
于是,接下来的3天,健康宝团队迅速对各项工作进行梳理,在有关部门协助下接通如交通、社区和商超等各种数据,快马加鞭,有条不紊地进行数据整理入库和程序开发。
得益于TDSQL的快速部署特性和领先的分布式架构,实际交付中也实现支撑快速一键部署,基于TDSQL,业务系统可批量安装上线,同时保障数据的双一致性(数据一致性,事务一致性),且支持不停机弹性拓展,省去复杂繁重的运维麻烦。
最终,健康宝基于腾讯云TDSQL 小程序的形式,结合其他腾讯云计算产品能力,大幅减少开发量,保障业务的快速交付,成功在3天内顺利上线,为北京市全市市民提供健康查询等服务。
1
Part 2 稳若泰山——“两地三中心”
北京健康宝一经推出,就迅速在北京各处投入使用,居民凭借健康码即可快速出入社区和办公楼等,此外,餐饮,超市等服务业领域也在逐步协同。
但接下来,一个问题就摆在了众人眼前,每时每刻都有那么多的人在流动,早晚高峰更甚,如此庞大的数据量,如此重要的数据,万一出现突发情况(自然灾害,计算机故障和人为损坏等)导致宕机,怎么办?
另一方面,海量用户几何级的爆发涌入,使得数据库集群规模越来越大,节点故障对业务的影响越来越敏感,进而对系统的容灾能力提出越来越高的考验。这又怎么办?
TDSQL给出了“两地三中心” 实时主备切换 强同步复制的解决方案。
容灾模式分同城和异地,同城容灾可以保障业务的高可用,但遇到自然灾害也可能双中心同时故障。
异地则是跨城区建立灾备中心,在面临地震等自然灾害时仍可保障业务运转,但异地通常因为物理距离导致网络延迟比较大,业务通常选择牺牲少量数据的可靠性或一致性,来确保在城市级故障下的可用性。
而“两地三中心”就是同城 异地双容灾方案,同时保障了业务高可用和高灾备能力。
与此同时,健康宝共部署了两套环境,两套环境下各部署一套TDSQL集群,数据实时同步。同时每套集群一主两备保证高可用。两套环境各部署一台缓存数据库,一主2备的哨兵模式。通过哨兵模式可以实现自动化的系统监控和故障恢复,同时数据实时同步。
最后,TDSQL的每一个分片都支持基于腾讯自研的raft强同步复制、强一致的高可用方案,保证系统7*24小时不中断服务、数据零丢失和数据的强一致性。
在精密的架构设计下,健康宝运营至今,还未出现过大规模的不可用现象。
1
Part 3 灵活快速——产品跨云部署
TDSQL 作为腾讯云企业级分布式数据库,于2015年上线腾讯云对外开放,多年来经历大量客户场景的实践打磨,已发展成一款产品服务生态完善的标准化数据库产品。事实上,除了健康宝,疫情期间,TDSQL还快速支持了深圳、四川等多地区健康码、市政防控平台小程序等高并发、筹备时间短的项目应用顺利上线、稳定运行。
具体而言,TDSQL基于全球灵活自动化部署的特性,可以通过模块之间的数量差异,自适应地做出单点方案和多节点高可用容灾方案。用户无需关注TDSQL较为复杂的各模块的互相依赖和配置管理问题,只需要根据实际,填写变量文件配置即可。在北京信通院机构现场对TDSQL产品化的测试显示,整个部署过程最快仅需9分钟。
如今,北京的疫情已经得到很好地控制,在国家的强力号召下,举国上下万众一心,共渡难关,同时,在疫情控制和复工复产等方面,借助腾讯金融级分布式数据库TDSQL以及相关互联网架构技术,北京健康宝解决了高并发、高可靠、高性能、高可用问题,保证海量用户稳定使用,同样做出了重大贡献。
而在未来,这个北京居民耳熟能详的小程序,或许还有可能在疫情退散,春回大地时,作为一个新的市民政务入口,惠民利民,发挥它新的价值。