低风险迁移单体应用到微服务的策略解析
1. 低风险增量策略概述
在将系统从单体架构迁移到微服务架构时,可采用低风险的增量策略。该策略包含三种战术:
- 绞杀者战术:通过代理包裹单体应用,将功能子集重定向到微服务。
- 绿地战术:创建一个全新的交付和部署环境来托管微服务。
- 宏服务战术:将单体应用拆分为宏服务,以控制技术债务的蔓延。
2. 绞杀者战术
2.1 绞杀者战术原理
绞杀者藤蔓会在宿主树的树枝上生根,随着时间推移,慢慢绞杀宿主植物并取而代之。绞杀者战术借鉴了这一思路,将单体应用视为待绞杀的老树,逐步对其进行改造,这种方式比直接砍掉单体应用风险更低。
所有系统都与外界进行交互,可将这些交互建模为离散事件。绞杀者战术的实现是通过一个代理来拦截这些事件,并将其路由到新的微服务或遗留的单体应用。随着时间推移,增加路由到微服务的事件比例,这样能很好地控制迁移节奏,避免在准备好之前进行高风险的过渡。
2.2 单体应用交互事件建模
绞杀者战术依赖于将单体应用视为具有强边界的实体的概念模型。任何影响单体应用的外部因素都被建模为携带信息的事件,单体应用也通过事件影响外部事物。这里的“事件”概念非常宽泛,应理解为信息流动,而非离散消息。
为了定义强边界,可能需要扩展对单体应用构成的理解,将支持系统也包含在内。可以把单体应用看作一个由紧密耦合到核心的次要部分组成的整体系统,需要绞杀的是整个单体系统,而不仅仅是核心部分。对现有系统进行的最重要分析之一就是确定边界以及通过该边界的信息流动。
超级会员免费看
订阅专栏 解锁全文
1221

被折叠的 条评论
为什么被折叠?



