谁能想到,新的一周,打工人的生活却是从“一码通”的崩溃开始的。身在广东的小周的确是有些崩溃的,1月10日,周一早上的马路人头攒动,她突然发现“粤康码”崩了。地铁里,写字楼门口以及医院大楼前,到处都是排队的人,她上班差点要迟到,好在不久后就恢复了正常。
西安“一码通”在短短半月内出现两次崩溃,广东粤康码也一度出现崩溃,天津核酸系统也出现了故障,随之带来的是对人们生活的巨大影响。新冠疫情持续两年,从最开始全社会人员居家隔离,到如今大家习惯靠绿码通行,这种二维码常相随的生活状态,最近却频频出现bug。由此,“一码通”背后数字公共系统的建设与治理问题也进入到公众视野中。
疫情发生以来,各省市的“一码通”建设是由谁来主导的,为何会出现崩溃?又有什么办法能避免这种事情发生?
“一码通”出故障
12月20日是个星期一,早高峰时期西安“一码通”破天荒地崩溃了。
在疫情发展正为胶着之际,这一崩溃竟然就崩了一天,西安当地要求市民出行需要提供48小时内核酸证明,如此一来,很多市民无法出行,只能原地不动。
当时,还在任的西安市大数据资源管理局局长刘军公开回应,近日,根据西安市疫情防控形势,各公共场所加大了扫码查验,“一码通”使用频率加大,对网络和平台造成较大压力。每秒访问量达到以往峰值10倍以上,他还建议广大市民非必要不展码、亮码,引来全网热议。
随后,西安相关部门也紧急进行了服务器的扩容,12月29日、12月30日以及12月31日分别有三次扩容,最终带宽达到700G。
但仅仅过了一个新年,1月4日,西安“一码通”再次崩溃。这一次,恢复时间倒是没有那么久,一上午后基本都可以正常使用。不过,西安市大数据资源管理局局长刘军也因履职不力而被停职检查。
半个月,一崩再崩,全网热议纷纷。在这中间,工信部总工程师韩夏曾亲自到陕西省通信管理局开展疫情防控工作调研。在西安“一码通”工作专班,韩夏了解核酸采样系统应急处置措施,要求系统再优化,细节再完善,确保不出现拥塞宕机现象。
就在西安“一码通”崩溃事件余热未散之时,1月10日,粤康码也出现了崩溃。“粤康码”是广东省基于“粤省事”微信小程序开发的健康通行码。公开数据显示,2020年2月以来,“粤康码”已在广东全省21个地市推广。不过粤康码在一小时左右就修复完毕,并发布公告称,在上午8:31,流量异常增大,最高达每分钟140万次,超出承载极限,触发系统保护机制。9:56完全恢复顺畅运行。
资深通信专家袁博分析称,两地的“一码通”虽然都崩了,但是很明显修复时间不一样。西安崩溃时间长,且修复慢,这可能是系统运行出现比较大的问题,而粤康码的崩溃可能是系统的小bug,修复起来也比较快。这种差异背后,袁博认为是技术实力与系统规划的差异。
应急不善,一崩再崩?
事实上,“一码通”的发展历史并没有多久。
作为疫情中的产物,“一码通”最初叫做健康码,源于钉钉开发的阿里的员工码,主要用于管理员工考勤。
疫情来势汹汹,2020年初杭州市政府与阿里一起研发出健康码,余杭区是第一个试行地区,随后推广到杭州全市以及浙江整个省。这之后,健康码陆续在全国各省市落地。就连国务院,也与阿里云、支付宝等开发了全国一体化政务服务平台疫情防控健康码系统。腾讯这边,也基于微信,开发了健康码。仅一个月时间,访问量就达到几十亿。
在短短时间内,健康码成为疫情下大部分国人的通行证、护身符,也支撑着过去两年艰难的抗疫和社会运转。
西安“一码通”也是在健康码大普及时期建设的,目前已正式上线近2年。西安市大数据资源管理局官网披露,2020年2月,经市联防联控指挥部批准,由市大数据资源管理局牵头,中国电信西安分公司开发部署,西安市个人电子识别码(即“一码通”)正式上线试运行。
这意味着西安“一码通”系统的单一来源总包商为中国电信西安分公司,应用部署在西安市“政务云”平台上。而中国电信西安分公司将工程也逐一分包出去,西安东软承担系统建设任务,杭州安恒承担安全配套建设任务,中译语通承担可视化工程任务,阿里云做得是短信服务,美琳数据则是做“一码通”的引擎部分,这些采购形式都是单一来源采购。
一位不具名资深工程师告诉中国新闻周刊,单一来源采购为直接采购,也就是说采购人指定该供应商进行采购,这种一般是采购人所熟悉的合作商,常发生在不可预见的紧急情况下。
很多人提出质疑,为何不进行公开招标,招揽更优秀的企业来进行建设。袁博表示,公开招标并不一定更好,不一定谁能中标,这个和相关部门的招标策略相关,假如是最低价中标,最终建设的系统也不一定优质。单一来源采购在紧急时期,整个采购流程只要公开透明并没有太大问题,一家总包商找来自己所熟悉的分包商来进行系统开发无可厚非。
也有网友质疑,在西安“一码通”建设中是否存在经费不足,导致系统并不能建设完备的情况。在西安市大数据资源管理局(汇总)2020年决算公开报告中显示,“一码通”平台建设经费项目全年预算数为2538.22万元,执行数2538.22万元。
中国电子技术标准化研究院网安中心测评实验室副主任何延哲告诉中国新闻周刊,从客观方面来看,这个钱确实不算充裕,具体更要看这些钱花到哪里去了,才能知道这个建设是否是高质量完成。不过他也表示,当初各地建设“一码通”这个系统,考虑的是短期需求,解决的也是当下的问题,谁也无法预料到疫情会持续如此之久,为了避免浪费,可能并没有更长远的规划,所以就导致计划赶不上变化,出现了较大事故。
他进一步分析,西安“一码通”出现崩溃也许更在于后期的应急预案不足。他认为,层层分包的情况下,在效率上可能就不会太高,做不到快速响应。
袁博认为,西安“一码通”系统出现了浪涌效应,一般是在人群大规模扫码或登录时出现流量峰值,在很短时间内超出系统最高设置值,此前购票网站12306也出现过很多次类似的情况。他分析根源可能在于最初的设计方案是不够完善,并没有预测到如此高峰的并发性情况,此外也没有做好监控,在正常的情况下,性能损耗上升异常并接近临界点时,就要开启应急预案。最为核心的一点是,如果异常情况发生了,但相关承包商没有很完备的应急预案,那就很容易导致长时间无法解决问题。
如何避免类似情况发生?
实际上,在西安发生两次“一码通”崩溃的事情后,官方给出的解释均为流量过大。
在“一码通”建设之外,西安将“一码通”等平台与政务一体化在线平台融合,还增加了核酸检测结果查询、疫苗接种信息查询及提醒、来返西安人员防疫信息录入、国内高中风险地区查询等功能,不止西安,其他地方政府也出现了“万码合一”的趋势,入学、出入境等生活场景都有可能产生相关联的接口,也许这在某种程度上更加大了“一码通”系统的流量承载压力。
不具名工程师告诉中国新闻周刊,眼下的“一码通”建设基本都是各省市自己来牵头的,可能存在经验不足,对问题响应不够及时的情况,特别是各省份的具体能力和情况都不一致,有找国企来建设的,也有找私企来建设的,这个时候更加考验政府的引导和监督能力。
何延哲认为“一码通”的建设中各地有各地的思路和想法,没有统一的标准。此次“一码通”崩溃事件,给到的警示则是政府要重视“一码通”,虽然不知道未来它的生命周期会是多久,但是只要和老百姓密切相关的,每天都要用的东西,一定要高度重视安全性和可靠性。他提到地方政府在这方面要有突出的策略,在预算层面、应急预案以及整体对承包商的要求都要贯彻下去,真正地做到位。
在何延哲看来,建设“一码通”系统技术难度并不算大,属于较为基础的开发技术,但是在数据处理的效率优化上是有难度的,因为量很大,如果前期设计好了一定的峰值和相关预案,是有可能较好地解决问题,因此做好应急方案,多进行应急演练还是很有必要的。
“任何系统都是有性能瓶颈的,有一个最大的性能规格,超出这个规格就有可能发生崩溃事件,关键的问题是总包商要兜底,保证系统质量和可靠性,做好流量监控,并提出完备的应急预案,还要指导合作伙伴来开发”,袁博表示这也许是能解决问题的方案。
袁博认为,让一个系统永远不崩溃很难,但是可以做到少崩溃,崩溃后能快速恢复。未来政府的数字化建设还是要继续前行的,即便是政府行为,也可以考虑吸收比较先进的公有云厂商的经验,扎实推进数字化建设。