微服务实践:从单体式架构迁移到微服务架构

迁移到微服务综述架构

迁移单体式应用到微服务架构意味着一系列现代化过程,有点像这几代开发者一直在作的事情,实时上,当迁移时,咱们能够重用一些想法。ide


一个策略是:不要大规模(big bang)重写代码(只有当你承担重建一套全新基于微服务的应用时候能够采用重写这种方法)。重写代码听起来很不错,但实际上充满了风险最终可能会失败,就如Martin Fowler所说:“the only thing a Big Bang rewrite guarantees is a Big Bang!”微服务


相反,应该采起逐步迁移单体式应用的策略,经过逐步生成微服务新应用,与旧的单体式应用集成,随着时间推移,单体式应用在整个架构中比例逐渐降低直到消失或者成为微服务架构一部分。这个策略有点像在高速路上限速到70迈对车作维护,尽管有挑战,可是比起重写的风险小不少。开发


Martin Fowler将这种现代化策略成为绞杀(Strangler)应用,名字来源于雨林中的绞杀藤(strangler vine),也叫绞杀榕(strangler fig)。绞杀藤为了爬到森林顶端都要缠绕着大叔生长,一段时间后,树死了,留下树形藤。这种应用也使用同一种模式,围绕着传统应用开发了新型微服务应用,传统应用会渐渐退出舞台。it

相关文章
相关标签/搜索