软件容易崩溃,如何做好预防措施?

2022-03-23 13:56

从2021年11月26日被世卫组织正式命名,到席卷全球130多个国家,“奥密克戎”只用了不到2个月时间,就连作为防控效果优异的中国,都被“奥密克戎”钻了空子,该病毒在陕西、河南、天津等地发生了一定范围的传播。2021年12月,为有效防控疫情的发展,某市组织了全市全员的核酸检测,由于检测人数众多,在大量数据涌入“一码通”时发生了软件崩溃,但作为疫情防控重要一环的“一码通”却频繁崩溃,引起网友们的热议。

由于此事关系人数多,大家也一并开始查起事故的缘由。大家了解到该一码通的开发是外包给了一家国内知名的软件开发公司开发,不由得思考是不是开发的不利所导致的崩溃。2021年9月,某软集团与某通讯商签署产业数字化战略合作协议,共同打造出“翼填报”“一码通”“全运通”等应用,为疫情上报、疫苗预约、核酸检测、联防联控等场景提供技术支撑。由此可以看出接包的企业并且无名无姓的小公司,而且在国内很出名的上市企业,按理说技术水平应该是完全能够胜任的,那原因是什么?


demo.jpg


“一码通”崩溃背后存在哪些问题?

一码通两度崩溃反映出健康码系统建设、服务器支持能力等方面存在问题。当全员在某时间内同时打开一码通,软件服务器瞬时负载过大,但是相关运维人员未能及时提前预判和扩容,则会出现怠机状况。此外,“从客户端到最终服务器机房中间的CDN节点,服务器机器数量,一码通相关服务的稳定性和鲁棒性(高负载的应对能力),以及上述环节中出现问题后,相关人员能不能快速响应、迅速修复问题,都会影响一码通正常运行。

所以归结来看,要保证常态化疫情防控下各类数据通信基础设施稳定、高效、安全运作,在加大资金与技术投入的同时,也要保证运维人员的综合修复能力,开发企业也应准备应急措施以及应对突发事件的备用方案,这样才叫一次完善的外包解决方案。


demo.jpg


那如何开发能解决一码通问题?

我们来看一位开发人员给出的例子


demo.jpg

demo.jpg

demo.jpg


当负载均衡器的能力达到上限时,可以对上述运维模型进行扩展,域名解析服务本身拥有负载均衡的能力,通过部署多个集群环境来处理上亿级的并发请求。

当然,为了削峰,可以在业务端添加消息队列,对请求来的消息进行缓存,排队处理。实际实战过程中,当系统业务模型开发完毕后,需要对系统进行压力测试,来验证系统的各个环节是否协调,并根据测试结果对系统进行运维资源配置的调整或者设计的更改。


Copyright2018贵州自由客网络技术有限公司版权所有 黔ICP备16000950号