Ruby on Rails:如何设计SaaS基础架构?

我正在构建一个Rails 3应用程序,我计划将其作为基于订阅的SaaS(软件即服务)产品提供。 基本上,我希望用户能够点击我的“注册”页面,创建一个新帐户,并立即开始使用该软件。

我想要完成的一个很好的例子是: http : //www.getharvest.com/

以下是有人报名时我需要做的事情:

  1. 在db服务器上生成它们的MySQL数据库
  2. 创建子域(例如,companyx.awesomeapp.com)
  3. Rails应用程序应该知道要基于子域连接的相应数据库

是否有任何好的指南来设置这些东西? 更好的是,您可以购买哪些服务来自动化此类事物? 理想情况下,我只是担心编写我的Rails应用程序,然后能够将它放在一些非常棒的Rails SaaS基础架构上。

(另外,我需要一种方法来按月向他们开账单,但我认为这是一个单独的问题/问题。)

Heroku会让你快速起步和跑步。 您可以使用heroku gem管理基础结构。 以下是客户端的文档,它允许您远程管理heroku应用程序。 使用heroku将允许您在单个级别上扩展应用程序,并让您专注于应用程序的代码而不是硬件。