四、ReferenceBean<T>消费者端初始化过程
1、ReferenceConfig的init()
createProxy中也生成了registryUrl
invoker = refprotocol.refer(interfaceClass, urls.get(0));
同样这里会ProtocolListenerWrapper->ProtocolFilterWrapper->RegistryProtocol
2、RegistryProtocol的refer
先注册消费者信息/dubbo/interfaceName/customs/{customUrl}
然后订阅
RegistryDirectory<T> directory = new RegistryDirectory<T>(type, url);
registry.register
directory.subscribe
当服务提供端地址有变化时候,注册中心会通知订阅者,更新
RegistryDirectory的
public synchronized void notify(List<URL> urls)
->refreshInvoker->to
1、ReferenceConfig的init()
createProxy中也生成了registryUrl
invoker = refprotocol.refer(interfaceClass, urls.get(0));
同样这里会ProtocolListenerWrapper->ProtocolFilterWrapper->RegistryProtocol
2、RegistryProtocol的refer
先注册消费者信息/dubbo/interfaceName/customs/{customUrl}
然后订阅
RegistryDirectory<T> directory = new RegistryDirectory<T>(type, url);
registry.register
directory.subscribe
当服务提供端地址有变化时候,注册中心会通知订阅者,更新
RegistryDirectory的
public synchronized void notify(List<URL> urls)
->refreshInvoker->to