一、该问题的重现步骤是什么?
问题一:
多租户的想要改造一下,同一个租户,对待不同的场景可以连接不同的数据库(例如,同租户下某些服务用XX库等)。
看了下代码,初始化动态数据源的查询是在TenantBaseConstant里面,最小的改动就是把查询源头改一下就可以了。
有没有什么办法,不改框架代码,修改TenantBaseConstant中的SQL。
如果这个SQL不能改的话,我就需要重写TenantDataSourceHolder,重写TenantDataSourceHolder是必要的重写TenantDataSourceAnnotationConfiguration和TenantDataSourceGlobalConfiguration,还有TenantDataSourceGlobalInterceptor
问题二:
租户动态数据源情况下,想做读写分离,这个怎么做?(修改、查询的业务代码是耦合的,不能分独立的工程)。
非动态数据源情况下,可以通过DynamicDataSourceContextHolder来切换主次数据源来实现读写分离。动态数据源下,切换就需要租户-服务-读/写这样三个值来确定使用的数据源,所以想要小成本改造一下。
二、你期待的结果是什么?实际看到的又是什么?
三、你正在使用的是什么产品,什么版本?在什么操作系统上?
四、请提供详细的错误堆栈信息,这很重要。
五、若有更多详细信息,请在下面提供。
扫一扫访问 Blade技术社区 移动端