服务拆分-绞杀者模式

2021-11-10  本文已影响0人  大哥你先走

绞杀者模式

1 定义

老系统向新系统迁移时,可采用将老系统的部分功能使用新应用或服务替换的方式逐步进行。当老系统全部的功能被替换后,新系统就完成了对老系统的替代,从而老系统被”绞杀“,老系统可以关闭或者下线。这种逐步替换老系统功能到新系统的应用或服务上,逐步完成老系统替换的模式,称之为”绞杀者“模式。简而言之,”绞杀者“模式就是一步一步的对老系统进行替换,直至老系统的所有功能都被替换。

2 上下文和问题

随着时间的推移,老系统的架构和技术变得过时,继续向老系统添加功能可能进一步增加系统的复杂性,使得老系统的维护演进变得更加困难。一步到位的替换老系统是一项艰巨的任务,通常采用小步快走的方式逐步使用新系统或服务替换老系统的功能,在替换的过程中老系统还要支持尚未被替换的功能。同时运行两个不同的系统,客户端需要知道功能的位置(老系统or新系统),这个是系统演进过程中需要解决的技术问题。

3 解决方案

采用新系统或服务增量替换老系统特定功能的方法,可以解决老系统向新系统全面迁移过程中遇到的问题。使用该方法时,可以创建一个外观(Facade)层(网关)拦截客户端请求,外观层负责将请求路由到正确的位置(老系统or新系统),客户端不感知系统内部的变化,使用和原来一样的API。

系统演进过程.png

随着时间的推移,老系统的功能逐步被新系统或新服务替代,当老系统的全部功能被替代后,老系统被”绞杀“,可以关闭下线。

4 优点

5 问题

6 应用场景

老系统渐进迁移到新系统,老系统体系结构演进时使用这种模式。

上一篇下一篇

猜你喜欢

热点阅读