03.dubbo第二次梳理后的思考

本文详述了Apache Dubbo的架构设计,强调其通过SPI模式实现的松散耦合和可扩展性。核心组件包括统一配置、服务注册与发现、RPC调用、对象传输序列化和服务治理等,允许组织根据需求选择合适组件。虽然微服务引入了复杂性,但对于已有业务的扩展和集成提供了强大支持。逐步引入Dubbo相关服务,如配置中心、RPC框架和服务治理,有助于应对产品发展需求。
摘要由CSDN通过智能技术生成

dubbo的详细文档请参考官方资料,文档 | Apache Dubbo.

当我们下dubbo的源代码进行分析时,整体设计较为清晰,各个jar提供相对独立的服务板块。并且在整体项目中,采用了SPI模式,让整个体系形成了松散的组合形式,让各个组织在使用过程中,可以根据自身的现状使用合适的组件完成相应的工作。

来自官网的扩展加载图。

在微服务框架中,核心工作是统一配置/服务注册与发现/rpc调用/对象传输序列化/服务治理等。并且各自有不同的实现,dubbo采用的提供基础API定义+平行化扩展能力,使整体体系中的各个组件可以独自扩展,实现不依赖特定平台的效果。

序列化API与实现:

 RPC API与实现:

 

远程调用API与实现

 

 服务注册发现API与实现

元数据API与实现

容器API与实现

配置中心实现

 

从以上各组件的不同实现来看,不同的组织可用根据自身的需求引入相应的组件即可,实现在已有的平台集成上快速引入体系化的微服务集成支撑组件。

引入dubbo后,微服务改造将进入快车道......

但有个问题,为什么微服务框架的设计者没都反对在项目初期进行微服务?从dubbo的源码分析过程就能理解,单应用与微服务直接是相同的。对于客户来说,解决实际问题就行,而微服务的引入,带来了横向扩充的同时,也同时引入了产品的复杂性。从单应用的单调用,到微服务的跨进程多可能端的调用,引入的复杂性在项目初期可以直接掩盖带来的便利性。

我们从2020年起,已经走过了业务构建过程,正在考虑降低配置风险,引入平行扩展基座,所以将分步推进,逐步引入统一配置中心/rpc框架/服务治理等相关服务,以便解决整个产品不断发展的需要。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值