腾讯云原生支撑起14亿人项目背后的技术揭秘
简述
从 2020 年 11 月 1 日开始,第七次全国人口普查工作进入到正式登记阶段,700 万普查员走街串巷,他们需要在 15 天内,对近 14 亿人口进行入户登记,完成十年一度的「大国点名」。
与以往不同,本次大国点名全量上云,由腾讯云+企业微信为14亿人服务。腾讯云从业务部署、业务测试、压力测试到最终上线,并提供完善的日志,监控服务,只用了短短数月的时间,全程护航,让700万B 端用户,14亿C 端用户规模的服务稳定高效上线。
那么,腾讯云是如何支撑第七次全国人口普查的呢?
背景
十年一度的全国人口普查是我国的重大国情国力调查,全面查清中国人口数量、结构、分布、城乡住房等方面情况,为科学制定国民经济和社会发展规划,推动经济高质量发展,提供科学准确的统计信息支持。
2019年11月,经李克强总理签批,国务院印发《关于开展第七次全国人口普查的通知》,决定于2020年开展第七次全国人口普查。以往的普查登记主要以入户访问并填写普查表的方式进行,登记完成后,需要将普查表信息录入计算机,实现普查信息的电子化。这样不仅需要投入大量的人力、物力和时间,还容易在录入过程中产生误差,一定程度上影响了数据质量。
与之前六次普查不同的是,第七次全国人口普查将采取电子化方式开展普查登记。普查员使用PAD或智能手机入户登记数据直接上报,也可以由普查对象通过手机等移动终端自行填报。
项目挑战
支撑十几亿人口的第七次全国人口普查工作,面临的最大的挑战是什么?
在业务需求上,普查需要在全国范围逐户逐人地进行全项调查登记,搜集人口资料,一方面人跟户的对应关系要准确,另一方面,在 15 天的采集期内,人是流动的,普查员也是流动作业的,中间会涉及到大量的数据校验、查重。
在组织上,700 万普查员尽管是一个临时组建的队伍,但他们实际上构成了一个百万员工量级的企业组织。这支700万人的临时队伍分散在全国各地,如何培训、如何考核、如何让他们的业务动作整齐划一,都是需要解决的现实问题。
而在技术上,数百万普查员同时对数据进行增删改查,过程中还要确保数据安全和服务稳定,今年在疫情防控常态化下开展人口普查,数据维度多,保证人口普查数据真实可靠、准确完整,是人口普查的核心要求,也是衡量普查成功与否的重要标准。
第七次全国人口普查是第一次全面采用电子化的方式来做数据的采集、上报及处理,如何让普查服务安全、高效、平稳进行,是腾讯面临的最大挑战。
解决方案
那么我们是如何面对挑战,腾讯云原生技术产品又是如何为第七次全国人口普查项目保驾护航的呢?
在大规模容器化落地实践方面
腾讯云容器服务 TKE(Tencent Kubernetes Engine) 2016年上线,到目前为止,已经为上万企业客户提供容器化平台,单集群支持上万个节点;并获得可信云 大规模容器集群性能 认证。在真实的生产环境:如快手2019年春晚红包活动,小红书,腾讯内部等, TKE 单集群都超过3000Node, 30w pod。
在稳定性方面
从TKE 集群管理层面的稳定性,节点稳定性,业务稳定性来说:
在集群管理上,TKE master 及 ETCD 等组件默认高可用部署,具备跨可用区容灾备份能力,严格保障了集群的稳定性。
在节点稳定性上:我们在帮助内外部客户做大规模容器化落地的过程中,遇到并解决了大量的性能及稳定性相关问题,包括 ipvs 模式高并发场景下,连接复用引发的连接异常问题;容器密集场景下,就是单节点容器数量较多,cadvisor 读取 memory cgroup 陷入内核态过久引发的网络毛刺问题等等;我们也已经将这些优化集成到官方定制内核里;TKE 公有云客户可以直接使用。另外 TKE 扩展了社区NPD(Node Problem Detector) 提供了更多的异常事件;比如文件系统异常,内核死锁,pid, file-max 是否达到最大值的80%等等;用户可以根据这些事件方便的定位问题;另外TKE 也根据这些事件做了节点自愈以及动态调度的能力, 从而保障99.95 的节点可用性。
业务稳定性方面,在业务自身多副本,高可用的基础上, 为了避免一些极端情况下的风险,比如某个机房故障或者网络中断,TKE 也提供了多集群管理及跨可用区双活的解决方案。
在服务治理方面
腾讯云微服务平台 Tencent Service Framework(TSF),提供上层业务的全托管服务,包括业务全生命周期管理、数据化运维支持,细粒度服务治理以及性能监控调优支撑等全栈能力
TSF 的弹性伸缩机制,保障了上千个服务实例的稳定运行,并帮助上层业务应对服务的高峰访问。
TSF 的服务调用拓扑图、调 用链路跟踪、日志联动、智能告警、服务运行时监控等功能,可以快速的定位服务瓶颈,为服务调优提供有效支撑,保障服务间通信质量,同时满足每秒几十万QPS的高并发响应需要。
TSF 通过微服务网关、服务鉴权、账户权限等安全体系以及微服务路由等治理手段,有效提升服务通讯质量和安全性。
在开发效率方面
第七次全国人口普查项目部分模块使用了云开发(Tencent Cloud Base);云开发包含云托管,云函数,云数据库,Http 访问服务,静态网站托管等多个服务模块;为用户提供云原生一体化开发环境和工具平台,为开发者提供高可用、自动弹性扩缩的后端云服务。其中云托管和云函数的底层就是容器技术;使用了腾讯云弹性容器服务 EKS。
正是由于云开发的助力,让开发人员避免了应用开发过程中繁琐的服务器环境搭建及运维,只需要专注于业务逻辑的实现,整个发开过程简单又高效。
第七次全国人口普查完全采用云原生解决方案,TKE 容器产品提供了稳定的运行时支撑,TSF 提供完善的微服务治理能力,TBase 提供可靠的数据库服务,CLB 提供公网接入,Waf 提供安全保障, 微信小程序给终端用户提供便捷的操作等等 ,多项产品共同协作;共同完成了云端人口普查这样一个历史性的项目。
价值
腾讯的“微信-企业微信-政务微信”三端协同能力,有效连通“民众-企业-政府”三大群体,目前已在全国多地广泛助力政府数字化转型。以科技为支撑,以互联网为载体,是第七次全国人口普查在信息化时代的创新之举,也是一个国家数字化水平的有力佐证。而腾讯作为互联网领域的先行企业,通过第七次全国人口普查的大考,进一步发挥企业技术生态能力,助力政府部门不断提升数字化政务服务能力。
分享
互动赢好礼
精读文章,回答问题赢好礼
Q: 在第七次全国人口普查中的解决方案,运用了腾讯云中哪些服务产品?可以简要说说它的重要作用。
至7月19日上午11点前,在本文末留言处留言答案,将选出答案最优质及点赞数量最高的前5名,送腾讯周边可爱蓝鹅一只。
往期精选推荐