同一个接口多数据源切换问题

Blade 未结 2 539
蚂蚁上树
蚂蚁上树 剑者 2022-11-16 16:08

一、该问题的重现步骤是什么?

目前需求是,从默认数据库读取数据向指定数据库写入数据

image.png


二、你期待的结果是什么?实际看到的又是什么?

读数据和写数据是切换了数据源的,实际没有切换数据源都是走的同一个非默认数据源

是否需要把上面读数据的方法写成feign接口,通过feign远程调用的方式才能实现?或者说还有其他方式?

三、你正在使用的是什么产品,什么版本?在什么操作系统上?


四、请提供详细的错误堆栈信息,这很重要。


五、若有更多详细信息,请在下面提供。

2条回答
  • 2022-11-16 16:50

    试过feign调用的方式虽然远程接口没有打@TenantDs但是读数据源没有使用默认数据源还是使用的租户的数据源

    0 讨论(0)
  • 2022-11-16 22:28

    同一个接口涉及到多数据源的情况,应该从设计上尽量避免。

    你可以写多个feign,然后单独写一个接口把feign放在一起,如果涉及到跨库提交,则用seata生效分布式事务便可。如果不涉及跨库提交,则只需要调用一次feign接口就可以了。

    而feign接口对应的服务,数据源就需要改成指定的地址,而不是主地址了。

    0 讨论(1)
提交回复