一码通缺陷分析与架构设计方案

本文探讨了一码通系统在疫情反复期间出现的技术问题,应用PAST框架进行问题定位,分析了并发量增大导致的主要矛盾。提出了基于数据分层架构、业务变化频率弹性、测试设计和性能优化的解决方案,包括UI层限制、缓存策略、限流算法和网络瓶颈处理,旨在提升系统的稳定性和性能。

从去年年底到现在,随着疫情的反复,很多城市的一码通系统出现了故障,这证明一码通系统在技术上还存在一些不足,所以本次分享将介绍如何利用 PAST 问题解决框架,从架构和设计方面研究和解决这些问题。

01 PAST 问题解决框架

PAST 的第一个单词 P 是 Problem,代表的是问题。当遇到问题的时候,不要急于进入方案阶段,应该先进行调研和分析,确认问题到底是什么。这也是 Eric Evans 的《领域驱动设计》中提到的,理解目标领域并将所学到的知识融入到软件中是领域驱动设计(DDD)的首要任务,这强调了问题的重要性。

第二个单词 A 是 Analysis,代表的是分析矛盾。导致问题产生的原因可能有多种,在这个过程中要先找出主要矛盾和次要矛盾,然后针对这些原因或者矛盾 找到对应的 Solution,也就是 S 。此时,可以先列举方案,然后 在 Tradeoff 阶段进行权衡和取舍 。在进行软件或者架构设计的实践中,大多数时候都在做权衡,而不是决策,所以需要对设计进行取舍,最终制定出方案。根据不同的方案,可能要顺势而为,在最后阶段进行成效的 review。

02 Problem 问题

下图为某一城市的一码通系统。假设产生地为西虹市,图 1(左)是正常情况下的一码通系统,包含姓名、证件号和二维码,其中二维码分为绿码、红码或者黄码。另外,图 1(左)的下方还包含疫苗接种信息以及 15 天内的核酸检测结果。由图可知,一码通的主入口集成了众多的功能。图 1(右) 为周一早晨一码通系统的故障显示页面,显示一码通系统空白,此外,还出现了核酸检测结果不显示任何信息等问题。

■图 1

03 Analysis分析

3.1 主要矛盾

在分析阶段需要针对这些问题尝试进行调查和分析,找到问题的原因和矛盾。此时主要是大量市民需要在周一早上从不同场合打开一

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值