如何在 Rails6 中实现数据库级多租户功能,允许我在运行时动态添加数据库?

How can I implement a database-level multi-tenancy feature in Rails6 that allows me to dynamically add databases in runtime?

我想实现一个数据库级多租户功能,允许我动态添加数据库。我还没有找到在 Rails6 中执行此操作的方法。 如果在应用程序处于 运行 时添加新数据库,Rails6 的多数据库功能能否动态识别新数据库?

有知道的请指教

您是否调查过 apartment gem?它有 API 可以在运行时创建新的数据库并切换到它们。我已在 rails 5.2 上成功使用它,但尚未在 rails 6 (YMMV) 上尝试过。您还可以利用 Rails 6 的多数据库功能在运行时创建和切换到数据库(需要一点深入的 Rails 连接池知识),但是当我尝试使用 rails 6.0 ,我被迫在每个请求上建立新的连接,这让事情变得缓慢且无法使用。希望这对您有所帮助,祝您好运!