1、微服务

微服务简介

倡导者:Martin Fowler,文章网址:http://martinfowler.com/articles/microservices.html

简而言之,微服务体系结构风格是一种将单个应用程序开发为一组小服务的方法,每个小服务都在自己的进程中运行,并使用轻量级机制(通常是HTTP资源API)进行通信。这些服务是围绕业务功能构建的,可以通过完全自动化的部署机制独立部署。这些服务的集中管理是最低限度的,可以用不同的编程语言编写,并使用不同的数据存储技术。

web系统的架构演变

单体应用模式 -> 垂直应用架构模式 -> SOA(面向服务架构模式) -> 微服务架构

1、单体应用模式

2、垂直应用架构模式

3、面向服务架构模式(SOA)

4、微服务架构模式

单体应用服务和微服务的区别

单体 微服务
所有业务模块都集中在一个应用中 根据业务拆分出不同的微服务应用
修改任何一处代码,都要重新部署整个应用 修改某个微服务的代码,只需要重新部署该微服务应用即可
无法针对于高热业务,单独做集群部署 如果某个微服务的并发量特别高,可以针对于该微服务做集群
开发团队人员特别多,代码冲突也特别多 每个微服务都有独立的团队的维护,代码冲突也仅限于当前微服务的团队中

微服务的适用场景

微服务设计原则

微服务的优势和缺陷

优势

缺陷