8

我们将为 Ruby on Rails 托管大约 20 个客户端站点。我们的服务器/VPS 需要最好的控制面板,您有什么建议?我进行了研究,但找不到关于这个确切主题的好的博客或帖子。

我的一些发现:

1) Cpanel 看起来不太好,因为它不支持 Rails 3.2.8

2) SSH 手动配置管理就足够了吗?有些人告诉我,这就是人们对 capistrano 所做的事情。但是您如何控制带宽、CPU 使用率等资源呢?

3) 将来我们希望提供免费试用注册,自动创建帐户并安装我们的应用程序。

理想的解决方案类似于 cpanel,但允许 Rails 3.2.8 与 Apache/Passenger 一起运行

4

1 回答 1

3

我认为许多 Rails 公司在 Rails 中构建了自己的控制面板。如果你在一个 VPS 上,这应该很容易。(如果您有多个 VPS,它仍然可行,但您的控制面板应用程序必须通过 SSH 完成所有操作,可能使用 Capistrano。)

在您的控制面板 Rails 应用程序中,您可以创建一些知道如何执行各种服务器管理任务的模型。例如,如果您使用 Apache,您的模型之一可能必须知道如何编辑http.conf才能添加新的虚拟主机。

您关于在注册时自动创建应用程序的想法也可以通过这种方式完成。编写一些模型逻辑,从源代码控制中检查应用程序,创建虚拟主机或其他任何东西,创建数据库(如果每个客户端都有自己的)等等。

还可以考虑将一些任务推送到作业队列中,而不是同步处理它们。(我是resque的忠实粉丝)。对于需要很长时间的任务,例如从源代码管理中签出,这是一个好主意。

您甚至可能希望将所有这些服务器管理功能提取到一个 gem 中供您私人使用。然后,如果需要,您可以轻松地从 Rails 应用程序外部的自定义脚本执行相同的任务。

于 2012-11-16T20:00:34.947 回答