极客新闻——19、如何从单体架构平滑过渡到微服务

本文笔记全部来自《极客新闻》——新鲜的技术资讯、权威的趋势剖析、别样的技术洞察


一旦决定在开发实践中引入微服务架构,如何将积累下来的庞大的巨无霸系统润物细无声的过渡到微服务架构将是一个巨大的挑战。

推倒重新来过肯定不可取,架构师们最想通过微服务化取代的部分,往往是公司的主要盈利核心,改造难度不亚于飞行中更换引擎。从业界公开的信息来看还没有哪家做到了完美升级,更多的可能无外乎两种:

  1. 改造后苟延残喘,研发疲于奔命;
  2. 改造中就直接休克。

因此为使微服务能顺利的应用,架构师从不应该幻想一蹴而就,可以从以下三方面采取行动:

一、培训先行

技术人都善于吧面临的问题变成技术问题,然后在自己最擅长的领域去把它解决。这就造成一个悖论:能用技术解决的问题就不是问题,真正的问题在受限的情景下仅靠技术是解决不了的,实施微服务最大的拦路虎也不是技术本身。

从行业内的实践来看,最大的问题不是如何做好微服务,而是就微服务应该是什么达成一个一致的看法。

因此,可以实施前通过多数人参与打讨论或培训,使认知达成一致。这类似编码规范中的命名规范,使用那种命名方法不重要,重要的是人人都使用同一种命名方法。

二、绞杀者模式

绞杀者模式 是指,对于无法通过修缮者模式改进的系统,在系统外重新构建新功能来逐步剥离重构,对功能服务逐个绞杀。好处是不影响原来的环境,一旦条件成熟就能快速切换。而缺点是可能需要一段时间同时维护两套系统,付出额外的开发维护成本。

三、监狱模式

监狱模式是同程内部的一种叫法,允许一些短期无力改动的系统通过监狱窗口(MicroProxy)接入微服务平台并委托Proxy将其暴露成微服务,单体架构往往拥有庞大的服务接口梳理,往往需要开多个监狱窗口。每个监狱窗口都会被包装分割成微服务,条件成熟了能很方便的替换成原生微服务,成为刑满释放。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值