加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – Heroku上的多模式Postgres

发布时间:2020-12-17 04:17:50 所属栏目:百科 来源:网络整理
导读:我正在扩展现有的Rails应用程序,我必须为它添加多租户支持.我已经做了一些阅读,看看这个应用程序将如何在Heroku上托管,我想我可以利用Postgres的多模式功能. 我已经读过,当使用多个模式时,备份似乎存在一些性能问题.我觉得这些信息有点过时了.有谁知道这是否
我正在扩展现有的Rails应用程序,我必须为它添加多租户支持.我已经做了一些阅读,看看这个应用程序将如何在Heroku上托管,我想我可以利用Postgres的多模式功能.

我已经读过,当使用多个模式时,备份似乎存在一些性能问题.我觉得这些信息有点过时了.有谁知道这是否仍然如此?

此外,还有其他任何性能问题,或者我应该考虑的警告吗?

我已经考虑过为每个表添加一个字段,这样我就可以使用单个模式,并将该字段引用到租户表中,但考虑到时间窗口,多个模式似乎是最佳解决方案.

解决方法

我基于Ryan Bigg和Apartment gem的一些工作,将postgres模式用于多租户网站.

https://leanpub.com/multi-tenancy-rails

https://github.com/influitive/apartment

我发现每个客户端都有一个独立的模式,这是一种优雅的解决方案,可以提供更高程度的数据隔离.我个人觉得性能提高了,因为Postgres可以简单地从表中返回所有结果,而不必过滤到’owner_id’.

我还认为它可以实现更简单的迁移,并允许您在不进行全局更改的情况下调整单个客户数据.例如,您可以向特定客户模式添加列,并使用功能标志来启用自定义功能.

我与性能相关的主要论点是备份是一个周期性的过程,而客户表的范围是每次访问.在此基础上,我会在备份方面遇到任何性能损失,从而降低客户体验.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读