开篇

 这篇文章用于分析Dubbo consumer匹配provider端URL的逻辑,一个简单的场景如在provider侧提供多版本的service的时候,consumer侧能够根据版本匹配到正确的接口并进行访问。

 通过这篇后如果发现provider侧服务发布,但是consumer端没有发现服务,就应该考虑到provider和consumer侧的服务的不匹配。


consumer服务匹配逻辑分析

  • 获取path目录下所有服务提供者children ,List children = zkClient.addChildListener(path, zkListener)。
  • 针对所有的URL的集合children通过toUrlsWithEmpty(url, path, children)进行匹配逻辑判断。
public class Zookeepe
收藏 打印