ruby-on-rails-3 - Heroku 上使用 PostgreSQL 的 Multi-Tenancy Rails 3 应用程序

标签 ruby-on-rails-3 postgresql mongodb heroku multi-tenant

我在 Heroku 上有一个 Multi-Tenancy 应用程序(多个彼此一无所知的帐户),我不确定如何最好地构建我的数据库。 Postgres 的模式 look awesome ,但 heroku 不处理 large numbers of them well .

现在,我的 Rails 应用程序主要提供 JSON,因为大多数模板都在客户端呈现(使用 Backbone.js)。所以我正在考虑迁移到 MongoDB,因为 1)每个租户可以获得一个顶级“帐户”文档,并且所有内容都可以嵌套在下面,以及 2)它的存储格式非常类似于 JSON。我们仍处于测试阶段,因此可以取消。这些是使用 Mongo 的正当理由吗?前者甚至是使用 Mongo 的一种智能方式吗?

如果我坚持使用 postgres,一切都应该属于顶级帐户模型(带有索引)吗?如果是这样,我将如何处理连接?是否可以执行多索引连接(总 postgres noob)?

到目前为止,我们在一个表中大约有 60k 个条目,但单个帐户可能只有 200-1000 个,所以我担心加入整个表。

非常感谢任何帮助。

更新:

我们最终迁移到了 VPS(Rackspace 云)并实现了 postgres 的模式。这一举动并不后悔,因为它的运行速度比在 Heroku 上快得多,而且我们对服务器有更多的控制权。

最佳答案

查看这个为使用 postgres 进行 Multi-Tenancy 而编写的 gem http://railscraft.tumblr.com/post/21421806379/multi-tenanting-ruby-on-rails-applications-on-heroku

关于ruby-on-rails-3 - Heroku 上使用 PostgreSQL 的 Multi-Tenancy Rails 3 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11111617/

相关文章:

ruby-on-rails-3 - Rails 3 开发站点比 Apache 2 + Phusion Passenger 上的生产站点快 10 倍

ruby-on-rails - 用纯 Ruby 编写 Rails 模板

sql - 在 PostgreSQL 中将(字符串)因子转换为数字

sql - PostgreSQL 中 "when"处或附近的语法错误

javascript - 在 Virtualbox 托管的 Ubuntu 中通过 Robomongo 访问 mongodb

jquery - Sprockets::FileNotFound:找不到文件 'jquery-ui'?

ruby-on-rails-3 - Rails 3 向电子邮件发送错误

mysql - 优化与数据库的工作

mongodb在不知道对象节点的情况下删除嵌套对象

mongodb - Mongoid 中的事务 (MongoDB)