02_dubbo的SPI

Posted HigginCui

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了02_dubbo的SPI相关的知识,希望对你有一定的参考价值。

【dubbo为什么不采用JDK自带的SPI】

1.JDK标准的SPI会一次性实例化扩展点所有实现,如果有扩展实现初始化很耗时,且如果没有用上加载,会很浪费资源。

2.增加了对扩展点IOC和AOP的支持,一个扩展点可以直接setter注入其他扩展点。

 

【dubbo的SPI的约定】

1.SPI文件存储路径在“META-INF/dubbo/internal” 目录下,并且文件名为接口的全路径名,即为“接口的包名+接口名”

2.每个SPI文件里面的格式定义为:“扩展名=具体的类名”

例如:

dubbo=com.alibaba.dubbo.rpc.protocol.dubbo.DubboProtocol

 

以上是关于02_dubbo的SPI的主要内容,如果未能解决你的问题,请参考以下文章

java SPI 04-spi dubbo 实现源码解析

02.dubbo源码解析之Dubbo扩展点加载

java SPI 05-dubbo adaptive extension 自适应拓展

dubbo spi扩展实现机制javasist

Dubbo SPI

Dubbo 源码解析03_Dubbo Protocol&Filter