您的位置:首页 > 其它

dubbo源码解析(九) dubbo中的zookeeper使用

2018-03-19 18:38 543 查看
在前两节中写到,dubbo连接zookeeper是通过下面代码来实现的: final Registry registry = getRegistry(originInvoker);



进入 RegistryFactory$Adpative的getRegistry方法:



通过spi获得ZookeeperRegistryFactory 的一个对象,进入ZookeeperRegistryFactory 的父类AbstractRegistryFactory的getRegistry方法:



进入createRegistry(url)方法:





zookeeperTransporter是一个adaptive类,进入该类的connect方法:



这里的spi的name是zkclient,进入ZkclientZookeeperTransporter的connect方法:





以上就是dubbo连接zookeeper的源码。下面分析如何在zookeeper中创建节点。
在RegistryProtocol的export方法中,创建节点的代码如下:registry.register(registedProviderUrl);进入该方法:



进入doRegister方法:



这就是创建节点的代码。创建的节点如下:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: