![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
dubbo 源码分析
文章平均质量分 93
jellyfishmix 的 dubbo 源码分析,持续更新中
JellyfishMIX
qunar -- java 开发
展开
-
dubbo ExtensionLoader 源码分析
主要是一些缓存 ConcurrentMap,ExtensionLoader 和 extension 创建时的部分线程安全,借助于 ConcurrentMap 的原子化 api 保证。使用 holder 用于持有目标 extension 实例,并在 extension 实例缓存中根据 name 获取。具体地说,指定的 instance 属性如果有 extension,此方法将会给这些属性注入 extension。获取 extension,如果 extension 不存在,会进行创建。原创 2022-10-24 23:34:29 · 212 阅读 · 0 评论 -
java SPI 机制与 dubbo 对 SPI 机制的扩展
SPI,全称为 Service Provider Interface,是一种服务发现机制,在 classpath 路径下的 META-INF/service 路径查找以接口的全限定名命名的文件,文件内容是接口实现类的全限定名,自动加载实现类。简单来说是一种动态替换发现机制,接口运行时才发现具体的实现类,只需要在运行前添加一个实现即可,并且将实现描述给 jdk 即可,这里的描述便是上面提到的 META-INF/service 下的配置。也可以随时对该描述进行修改,完成具体实现的替换。原创 2022-10-24 23:31:28 · 175 阅读 · 0 评论