14 阶段性复习:放大100倍压力,也要找出你系统的技术挑战!

阶段性复习:放大100倍压力,也要找出你系统的技术挑战!
本文也是我们阶段性复习的一个重要环节,因为我们的学习节奏是每次更新一篇技术文章+一篇授人以渔,目的是让大家学完一个知识之后,能够引导大家对自己的系统进行反思和主动思考。
因此对阶段性复习而言,我们也是每次都有两篇文章,一篇是用思维导图对学习过的知识体系的梳理,一篇是对过去一个阶段学习过的知识的授人以渔环节的梳理和总结,这也是非常重要的一个部分。
今天我就来带着大家梳理一下过去一个阶段的授人以渔环节,我们希望大家能够哪些问题进行深度的思考。
第一,大家先思考一下系统的核心业务流程,当然不是指那种查询之类的操作。所谓核心链路指的是对你的系统进行的数据更新的操作,这才是核心链路,因为查询操作一般来说不涉及复杂的业务逻辑,主要是对数据的展示。
对你的系统的核心链路分析一下,有哪些步骤,这些步骤各自的性能如何,综合起来让你的核心链路的性能如何?在这里是否有改进的空间?
第二,大家可以思考一下,在你的系统中,是否有类似后台线程定时补偿的逻辑?
比如订单长时间未支付就要自动关闭它,你们系统里有没有那种后台线程,会定时扫描你的数据,对异常数据进行补偿、自动修复等操作的?
如果有的话,这种数据一般量有多大?如果没有,你可以思考一下,你们系统的核心数据是否需要类似的后台自动扫描机制?
第三,大家可以思考一下,在你的系统里有没有跟第三方系统进行耦合?就是一些核心流程里需要同步调用第三方系统进行查询、更新等操作,第三方系统是否对你的核心链路有性能和稳定性上的影响?
第四,大家可以思考一下,在你的核心链路中,是否存在那种关键步骤可能会失败的情况?万一失败了该怎么办?
第五,大家可以思考一下,平时是否存在其他系统需要获取你们数据的情况?他们是如何获取你们数据的?
是直接跑SQL从你们数据库里查询?或者是调用你们的接口来获取数据?是否存在这种情况?如果有,对你们有什么影响吗?
第六,你们的系统是否存在流量洪峰的情况,有时候突然之间访问量增大好几倍,是否会对你们的系统产生无法承受的压力?
希望大家能好好思考这六个问题,同时思考后的结果,欢迎发送到评论区一起交流!
End
专栏版权归公众号儒猿技术窝所有
未经许可不得传播,如有侵权将追究法律责任