Dubbo服务引用原理

服务引用原理

Dubbo服务引用原理_第1张图片
配置文件
通过Spring容器加载
每一个标签,对应一个解析类

Reference

对应ReferenceBean
实现了FactoryBean
Dubbo服务引用原理_第2张图片

FactoryBean

工厂Bean
引用标签,通过往容器中,注入Bean
使用时,从容器中,获取Bean对象

getObject

返回标签配置的Bean对象
Dubbo服务引用原理_第3张图片

Get

获取Bean对象
Dubbo服务引用原理_第4张图片

Init

初始化
如果,是空的,初始化对象
Dubbo服务引用原理_第5张图片

createProxy

创建代理对象
Dubbo服务引用原理_第6张图片

refprotocol.refer

远程引用接口
refprotocol
Dubbo服务引用原理_第7张图片
基于Java的SPI机制
核心DubboProtocol、RegistryProtocol

首先,调用RegistryProtocol的refer方法
然后,调用DubboProtocol的refer方法
Dubbo服务引用原理_第8张图片

RegistryProtocol

Refer方法
根据注册中心地址,获取注册中心信息
Dubbo服务引用原理_第9张图片

doRefer

执行引用
Dubbo服务引用原理_第10张图片

directory.subscribe

订阅服务

DubboProtocol
Refer方法
Dubbo服务引用原理_第11张图片

getClients

获取客户端
Dubbo服务引用原理_第12张图片

getSharedClient

获取共享的客户端
Dubbo服务引用原理_第13张图片

initClient

初始化客户端
Dubbo服务引用原理_第14张图片

Exchangers.connect

连接客户端
Dubbo服务引用原理_第15张图片

Connect

连接
Dubbo服务引用原理_第16张图片

Transporters.connect

传输器连接
Dubbo服务引用原理_第17张图片

Connect

到达了Netty底层
Dubbo服务引用原理_第18张图片

Connect

创建一个Netty客户端
URL地址,监听端口号
Dubbo服务引用原理_第19张图片

你可能感兴趣的:(————Dubbo)