Service Provider Interface (SPI) is a kind of API that aims to be implemented or extended by the third party. It can be used to realize framework extension or component replacement.
ShardingSphere uses SPI to load data to the config center/registry center and disable instances and databases. Currently, ShardingSphere supports frequently used registry centers, Zookeeper and Etcd. In addition, by injecting them to ShardingSphere with SPI, users can use other third-party config/registry centers to enable databases orchestration.
ShardingSphere adopts Apache Curator to enable Zookeeper(support config center®istry center). Please use Zookeeper 3.4.6 and above, see the official website for details.
ShardingSphere adopts io.etcd/jetcd to enable Etcd(support config center®istry center). Please use Etcd v3 and above, see the official website for details.
ShardingSphere adopts Apollo Client to enable Apollo(support config center). Please use Apollo Client 1.5.0 and above, see the official website for details.
ShardingSphere adopts Nacos Client to enable Nacos(support config center). Please use Nacos Client 1.0.0 and above, see the official website for details.
Use SPI to realize relevant logic coding.