Dubbo服务注册
2020-06-18 18:26:56 2 举报
登录查看完整内容
Dubbo服务注册详细时序图
作者其他创作
大纲/内容
exporter = protocol.export(wrapperInvoker);该protocol是自适应扩展点
.addStateListener
其中这个扩展点是进过装饰的,所以它返回的Invoker的调用链为StubProxyFactoryWrapper(JavassistProxyFactory())
获取配置文件中的注册中心地址
export()开始进行服务的暴露
getInvoker
返回一个List
在这个方法里会开几件事情,首先会检查更新配置,然后会判断是否延迟暴露等等
doLocalExport
doExportUrls
register
返回register
添加状态变更事件
返回AbstractProxyInvoker
connect(url)
super.export()
FailbackRegistry
完成注册
AbstractInterfaceConfig
该方法主要是针对每一种协议进行服务的发布
AbstractRegistryFactory
因为ZookeeperRegister没有该方法,所以走其父类的方法
该方法中,用到了自适应扩展点,会生成RegistryFactory$Adaptive,然后根据url传入的注册中心配置的参数,生成相应的注册中心扩展点实例,这里主要是根据ZK作为配置中心去走
该方法是核心:实现服务的注册和发布这里面会有很多处理逻辑• 实现对应协议的服务发布• 实现服务注册• 订阅服务重写
JavassistProxyFactory
ServiceConfig
创建连接,返回zkClient
doRegister
loadRegistries
createRegistry
register()
ProxyFactory&Adative
ZookeeperRegistry
ServiceBean
在这个方法里首先就是做了URl的组装工作
ZookeeperRegtistyFactory没有getRegitster方法,所以走父类
这个方法走下去是对服务进行发布
zkClient.create
RegistryProtocol
getRegistry
0 条评论
回复 删除
下一页