微服务架构概述 架构模式( 三 )



提高容错性,一个服务的问题不会让整个系统瘫痪

系统不会长期限制在某个技术栈上

降低成本 。可尽量复用已有功能,避免重复造轮子 。可以大大减少项目建设过程的调研、设计、开发、测试、运维的成本 。

易于开发与维护:一个微服务只关心一个特定的业务功能,所以他业务清晰,代码量较少 。独立开发部署服务 。

局部修改容易,所以开发上线速度和灵活性

更高的代码质量

获得围绕业务功能创建/组织的代码

提高生产力 。开发人员专职自己的微服务开发,对业务和代码都熟悉 。

更容易扩展

技术栈不受限:每个服务可用不同的开发语言

按需伸缩:可根据不同的需求,实现细粒度的拓展 。

为多端化服务(多种客户端,例如:浏览器,车载终端,安卓,IOS等等)打下坚实的基础 。

持续集成和持续交付的应用大大提高生产力 。提高开发人员生产力, 开发人员只需要将代码推送到代码仓库即可 。该代码将被集成,测试,部署,再次测试,与基础功能(Maven依赖)合并,经过质量审查,并准备以极高的信心进行部署 。减少了手动操作的环节,极大的提高了重复工作的效率 。
4.2 微服务的缺点