Dubbo应用开发之架构的演进之路
说到架构最早期我们开发一个系统使用的就是最简单的单体架构,只需要一个jar包或者war包就可以直接在tomcat上运行起来.那么说到Dubbo就不得不提到SOA架构了
SOA与微服务
这里主要介绍SOA架构是如何从单体架构进行演变过来的,简单来说就是在单体架构使用的过程中出现了一系列的问题然后进行不断的改进
单体架构
存在的问题

由于出现了这一系列问题那么我们就会对这个系统进行一个水平拓展
水平拓展

垂直架构

RPC架构[Remote Procedure CaLL]

SOA架构[Service-Oriented Architecture]
SOA架构是RPC架构的演化。代表框架Dubbo
RPC
服务治理
ESB

微服务架构
微服务是SOA架构的升级,在微服务体系统中,没有⼦系统了,全部都是服务化功能。微服务架构代表框架,SpringCloud,DNS

Dubbo3升级的核⼼内容
- 易⽤性
开箱即⽤易⽤性⾼,如 Java 版本的⾯向接⼝代理特性能实现本地透明调⽤功能丰富,基于原⽣库或轻量扩展即可实现绝⼤多数的微服务治理能⼒。更加完善了多语⾔⽀持(GO PYTHON RUST)
超⼤规模微服务实践
- ⾼性能通信(Triple GRPC)
⾼可扩展性 (SPI 多种序列化⽅式 多种协议)
丰富的服务治理能⼒
超⼤规模集群实例⽔平扩展
- 云原⽣友好
容器调度平台(Kubernetes)
将服务的组织与注册交给底层容器平台,如 Kubernetes,这是更云原
⽣的⽅式。
- Service Mesh
原有Mesh结构中通过Sidecar完成负载均衡、路由等操作,但是存在链
路的性能损耗⼤,现有系统迁移繁琐等问题。
Dubbo3引⼊Proxyless Mesh,直接和I控制⾯交互[istio]通信。集成
ServiceMesh更为⽅便,效率更⾼。