第4章 Directory目录与Router路由服务

4.1 Directory目录

Directory代表了多个invoker(对于消费端来说,每个invoker代表了一个服务提供者),其内部维护着一个List,并且这个List的内容是动态变化的,比如当服务提供者集群新增或者减少机器时,服务注册中心就会推送当前服务提供者的地址列表,然后Directory中的List就会根据服务提供者地址列表相应变化。

在Dubbo中,接口Directory的实现有RegistryDirectory和StaticDirectory两种,其中前者管理的invoker列表是根据服务注册中心的推送变化而变化的,而后者是当消费端使用了多注册中心时,其把所有服务注册中心的invoker列表汇集到一个invoker列表中。

本章我们主要从下面几个方面来探讨RegistryDirectory:

· 消费端启动时何时构建RegistryDirectory

· RegistryDirectory管理的invoker列表如何动态变化

· 路由信息是如何保存与变化的