saas 租户独立数据库,多数据源动态切换的实现方案有哪些?

333 天前
 chlinlearn
1173 次点击
所在节点    问与答
6 条回复
kuxuan
333 天前
也在关注,希望有大佬回复
SilenceLL
333 天前
1. 重写 AbstractRoutingDataSource,记得缓存数据库连接,在请求拦截器,消息消费入口,定时任务入口设置数据库上下文(其他看项目还有什么请求来源)。
2. https://github.com/baomidou/dynamic-datasource-spring-boot-starter
cylx3124
333 天前
之前同事有遇到类似的多数据源切换问题,当时我的想法不是在单服务连接多数据源,在服务代码中做数据源切换,而是部署多个服务,每个服务连接不同的数据源,然后通过一层 gateway 代理,通过代理解析用户身份,然后转发请求到连接对应数据源的服务上。
不知道这个的方案适不适用你们的场景。
chlinlearn
333 天前
@SilenceLL 感谢回复
chlinlearn
333 天前
@cylx3124 感谢回复
SilenceLL
333 天前
@cylx3124 只代入了自己的业务,这位朋友提的很对,具体还是要看你们的业务,我们这种属于适合那种极小客户。可以在不同层次做租户的路由,域名,服务器,数据库实例,catalog 。 可以参考下微软的多租户模型看看 https://learn.microsoft.com/zh-cn/azure/architecture/guide/multitenant/considerations/tenancy-models

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/946119

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX