dubbo-website
dubbo-website copied to clipboard
Dubbo SPI 加载问题
关于dubbo加载spi的文档说明,都强调按需使用,其实这里有个概念容易混淆,那就是spi对应的Class 实例以及spi实例本身。
也就是dubbo只是在用到的时候再实例化spi,而对于spi对应的Class实例,是一开始都加载进来的,文档中这点并没有说清楚。
举个例子,xxx.DemoService接口有两个实现类:
a=xxx.ADemoServiceImpl
b=xxx.BDemoServiceImpl
那么dubbo是都会把 ADemoServiceImpl.class 和 BDemoServiceImpl.class 都加载到内存,只是在需要的时候再根据 .class 进行实例化,获得相应的spi实例。