Eureka 应用程序变迁图
跳到导航
跳到搜索
https://www.bilibili.com/video/BV1eU4y187zE/?p=3
无论是 SOA 架构、RPC 架构还是微服务架构统称为分布式架构。
第一代:单体架构 | 第二代:SOA 架构 | 第三代:微服务架构 |
---|---|---|
|
|
|
应用向 CloudNative 演进,微服务是 CloudNative 的事实标准 |
附:
ESB:Enterprise Service BUS,企业消息总线,ESB
TTM:Time To Marketing,上市周期,产品更新上限的频率
RPC 架构和 SOA 架构和微服务架构的区别
SOA 架构:核心消息总线。消息总线过于笨重在目前项目中已经很少使用了。
RPC 架构:主要有被调用的远程服务端(Provider)和调用的服务端(Consumer),把所有数据库操作都封装到了 Provider。一个单体拆分成多个,之间使用 HTTP 通信,每个项目又拆分成两个(Provider 和 Consumer),之间使用 Dubbo 协议通信。mapper 和 service 写到 provider 中,service 和 controller 写到 consumer 中。
微服务架构:每个业务是一个项目。业务之间通信使用 HTTP 协议通信。不再对一个业务(模块)项目进行拆分成 Provider 和 Consumer 了。mapper 和 service 和 controller 都写到一个项目中。
目前市场上微服务架构的常见实现框架
实现框架:Spring Cloud
Spring Cloud 里面目前包含三套体系:
- Spring Cloud Netflix:目前市场上使用最多的
- Spring Cloud Alibaba:基于 Dubbo 实现
- Spring 自己的:为了摆脱受 Netflix 公司限制,所有功能都自己又主键推出一套