手写Dubbo SPI机制和源码分析

程序员 2024-10-4 17:21:36 108 0 来自 中国
版本

2.7.8
SPI机制

官方文档先容如下
SPI 全称为 Service Provider Interface,是一种服务发现机制。SPI 的本质是将接口实现类的全限定名设置在文件中,并由服务加载器读取设置文件,加载实现类。如允许以在运行时,动态为接口更换实现类。正因此特性,我们可以很容易的通过 SPI 机制为我们的步伐提供拓展功能。
说白了,SPI是一种第三方框架常用的扩展本事:第三方框架界说接口,使用者来写实现类,通过SPI机制框架运行时可以获取到这个实现类,通过反射创建对象,并使用这个对象来继承完成业务
所以通过SPI机制,第三方框架可以将某一段业务逻辑交由使用者自界说实现
好比Dubbo的负载平衡战略,内置提供了多种常用战略(Random/RoundRobin..),但依然无法满意全部效户的需求
通过SPI机制,可以让用户自己实现负载平衡战略,Dubbo再发送RPC调用时通过SPI获取到用户实现的战略,并使用这个战略来决定终极选择调用的服务端
Java SPI

jdk提供了简朴的SPI功能,可以再运行时获取某接口的全部扩展实现类,好比,界说一个接口:Car
您需要登录后才可以回帖 登录 | 立即注册

Powered by CangBaoKu v1.0 小黑屋藏宝库It社区( 冀ICP备14008649号 )

GMT+8, 2024-11-21 20:59, Processed in 0.163255 second(s), 32 queries.© 2003-2025 cbk Team.

快速回复 返回顶部 返回列表