关键词文章采集源码(,之前中集群容错的总体架构于dubbo.直入)
优采云 发布时间: 2022-03-06 15:20关键词文章采集源码(,之前中集群容错的总体架构于dubbo.直入)
原文链接:
前言
由于明天还要加班(一秒对不起自己),所以答应朋友每周更新dubbo源码分析。由于上次讲了集群容错的整体架构,所以主要讲第一个关键词目录,这个内容不多,比较适合这种限时分享。我会陆续分享dubbo源码分析系列,但不限于dubbo。
直奔主题
首先我们来看看目录接口的实现类。他主要有两个实现类,一个是StaticDirectory,一个是RegistryDirectory
其实这也是一道很好的面试题,他还是能分辨出三种人的
本文的重点是RegistryDirectory,首先我们来看看他的继承结构
这个NotifyListener中的notify方法是注册中心的回调,这也是它可以根据注册中心动态变化的原因。这是上一篇文章中集群容错的整体架构图,唤醒大家对Directory的记忆
由此可见,Directory是从methodInvokerMap中获取invoker的。从这张图也可以看出,这些主要是读操作,那么它的写操作是什么时候写的呢?也就是当回调方法 notify 可操作
也就是说,如果注册表有变化,更新methodInvokerMap和urlInvokerMap的值(这个在后面我们讲服务引用原理的时候会提到),官网有提到。原因是。