Solon

八、多数据源与动态、分片数据源

</> markdown

1、确定几个概念

固定单库数据源:

  • 是指1个数据源,内部不再有别的子数据源。是它就是它了
  • 比如:HikariDataSource、DruidDataSource

固定分片数据源(内部多源,基于分片规则切换):

  • 是指1个数据源内有多个子数据源,根据规则确定相关数据源。一般用于分库分表或读写分离场景等。
  • 比如:ShardingDataSource(基于 Apache ShardingSphere 适配的数据源)

动态数据源(内部多源,基于线程状态切换):

  • 是指1个数据源内有多个子数据源,且可以动态切换内部的子数据源。用时,需要不断手动指定。
  • 比如:DynamicDataSource
  • 一般通过:@DynamicDs("db_user_1")@DynamicDs("db_user_2") 切换动态数据源内部的子数据源

多数据源:

  • 即指有多个数据源(可以是固定数据源或动态数据源),且各不相关,相互独立。
  • 一般通过:@Db("db_user")@Db("db_order") 确认1个数据源。

2、具体参考