服务架构演变
- 水平拆分: 网站流量少,全部功能做在一个项目里面,高耦合性
- 垂直拆分: 代码重复性高
- 分布式服务:相互独立,又相互调用
流动计算架构
-
SOA,面向服务的架构
-
注册中心:所有提供服务的人,服务的治理
-
问题:
3.1 服务有强依赖关系,容易引起雪崩
3.2 关系复杂,运维,测试部署的困难 -
微服务:
单一职责:微服务中每一个服务对应唯一的业务能力,做到单一职责
微:微服务的服务拆分粒度很小,服务虽小,但 五脏俱全
自治: 自治就是每个服务相互独立,互不干扰
团队独立: 每个服务都是独立的开发团队,人数不能过多
技术独立:因为是面向服务,提供rest接口,使用什么技术没有别人干涉
前后端分离:采用前后端分离开发,提供统一Rest接口,后端不用再为PC,移动端开发不同的接口
数据库独立:每个服务都使用自己的数据源
部署独立,服务间虽然有调用,但要做到服务重启不影响其他服务,有利于持续集成和持续交付,每个服务都是独立的组件,可复用,可替代,降低耦合,易维护