为什么说即便是新手,也应该学习微服务?( 二 )

问题就出在这里,随着应用程序的规模和复杂度不断增长,多个团队协同开发一个单体应用程序会变得越来越困难、越来越复杂,假设某个团队需要修改接口,那么其他团队与之对应的代码也需要修改,同时整个应用程序都需要重新构建、测试、部署。

为什么说即便是新手,也应该学习微服务?

微服务架构就是为了解决上述问题而生的,它的本质在于分布式、去中心化。简单理解就是分解应用程序的功能,把一个大型服务拆分成很多小服务,使它们完全彼此独立,并且可以相互通信,拆分之后的微服务架构如下图所示。

为什么说即便是新手,也应该学习微服务?

微服务的优点

将应用程序分解为不同的更小的服务的好处是,它改进了模块化,使应用程序更容易理解、开发、测试,并且更能抵御体系结构的侵蚀。它还通过允许小型自治团队开发和部署来并行化开发。简单来说,微服务架构基本符合我们拆解问题的方式:把一个复杂问题拆成多个简单的问题,但微服务的拆解是基于业务模块的,微服务具有以下特征:

推荐阅读