007-2271-不出局

架构重构内功心法

2019-06-27  本文已影响9人  短暂瞬间

第92篇

极客时间《从0开始学架构》课程笔记。

第一式:有的放矢

只有少部分架构演化可能需要推到重来,绝大部分的架构演化都是通过架构重构来实现的。

架构重构的难点

架构重构案例

架构师的首要任务是从一大堆纷繁复杂的问题中识别出真正要通过架构重构来解决的问题,集中力量快速解决,而不是想着通过架构重构来解决所有的问题。

  1. 后台系统重构:解决不合理的耦合


    重构前

    重构目标:将游戏数据和业务数据拆分,解开两者的耦合,使得两个系统都能够独立快速发展

重构后

重构后的效果:M 系统和 P 业务后台系统每月上线版本数是重构前的 4 倍。

  1. 游戏接入系统重构:解决全局单点的可用性问题


    重构前

重构目标:实现双中心,使得任意一个机房都能够提供完整的服务,在某个机房故障时,另外一个机房能够全部接管所有业务

重构后

重构后的效果:系统可用性从 3 个 9 提升到 4 个 9,重构前最夸张的一个月有 4 次较大的线上故障,重构后虽然也经历了机房交换机宕机、运营商线路故障、机柜断电等问题,但对业务都没有什么大的影响。

  1. X 系统:解决大系统带来的开发效率问题


    重构前

重构目标:将各个功能拆分到不同的子系统中,降低单个系统的复杂度

重构后

重构后的效果:各个系统之间通过接口交互,各系统的发展和开发速度比原来快了很多,系统也相对更加简单,也不会出现某个子系统有问题,所有业务都有问题

总结

第二式:合纵连横

合纵

连横

第三式:运筹帷幄

让架构重构落地

制定分段实施策略

  1. 优先级排序:将明显且又比较紧急的事项优先落地,解决目前遇到的主要问题
  2. 问题分类:将问题按照性质分类,每个阶段集中解决一类问题
  3. 先易后难:简单问题先处理,可以较快的看到成果,可以让难的问题简化,可以及时调整方向
  4. 循序渐进:按照固定的步骤和节奏,更有利于项目推进。建议每个阶段最少 1 个月,最长不要超过 3 个月,如果评估超过 3 个月的,那就再拆分为更多阶段
X系统架构重构总体策略示例
上一篇 下一篇

猜你喜欢

热点阅读