710fed1cbbe0450c99001d5c559e37b8133a3d59
\345\237\272\344\272\216spi\346\234\272\345\210\266\345\256\236\347\216\260\345\274\225\346\223\216\345\217\257\346\211\251\345\261\225\345\212\237\350\203\275\346\226\271\346\241\210.md
... | ... | @@ -1,10 +1,10 @@ |
1 | 1 | #### 一、引言 |
2 | -本方案旨在为现有引擎系统提供一个灵活且可扩展的方法,以支持不同类型的 SPI(Service Provider Interface)组件。通过定义标准化的 SPI 接口,并在运行时动态加载相应的实现,不需要修改引擎代码,我们可以提高系统的模块化程度,便于未来的维护和升级。 |
|
2 | +本方案旨在为现有引擎系统提供一个灵活且可扩展的方式,以支持不同类型的 SPI(Service Provider Interface)组件。通过定义标准化的 SPI 接口,并在运行时动态加载相应的实现,不需要修改引擎代码,我们可以提高引擎的模块化程度,便于未来的维护和升级。 |
|
3 | 3 | #### 二、总体架构 |
4 | 4 | 1. **SPI 接口定义**: |
5 | 5 | - 在现有的引擎工程中创建一个专门的 `spi` 目录,用于存放所有 SPI 相关的接口。 |
6 | - - 新增 `spi/distributed` 包,其中包含了分布式相关的 SPI 接口,例如 `Installer`, `Registry`, 和 `Router` 等。 |
|
7 | - - 任何其他的 SPI 接口都可以在`spi`目录下进行定义,比如ORM等 |
|
6 | + - 目前新增的有 `spi/distributed` 包,其中包含了分布式相关的 SPI 接口,例如 `Installer`, `Registry`, 和 `Router` 等。 |
|
7 | + - 任何其他的 SPI 接口都可以在`spi`目录下进行定义,比如 ORM 等 |
|
8 | 8 | |
9 | 9 | [[http://iidp.chinasie.com:9999/iidpminio/spi/spi.jpg]] |
10 | 10 | 2. **服务发现机制**: |