版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/nangeali/article/details/82633205
服务引用原理
配置文件
通过Spring容器加载
每一个标签,对应一个解析类
Reference
对应ReferenceBean
实现了FactoryBean
FactoryBean
工厂Bean
引用标签,通过往容器中,注入Bean
使用时,从容器中,获取Bean对象
getObject
返回标签配置的Bean对象
Get
获取Bean对象
Init
初始化
如果,是空的,初始化对象
createProxy
创建代理对象
refprotocol.refer
远程引用接口
refprotocol
基于Java的SPI机制
核心DubboProtocol、RegistryProtocol
首先,调用RegistryProtocol的refer方法
然后,调用DubboProtocol的refer方法
RegistryProtocol
Refer方法
根据注册中心地址,获取注册中心信息
doRefer
执行引用
directory.subscribe
订阅服务
DubboProtocol
Refer方法
getClients
获取客户端
getSharedClient
获取共享的客户端
initClient
初始化客户端
Exchangers.connect
连接客户端
Connect
连接
Transporters.connect
传输器连接
Connect
到达了Netty底层
Connect
创建一个Netty客户端
URL地址,监听端口号