有人可以解释Rails vs PHP部署的真实情况,尤其是在基于转销商的虚拟主机(例如Hostgator)的背景下吗?


15

目前,我在HostGator公司有一个经销商帐户。我设计网站,到目前为止,它偶尔还是被Wordpress CMS等包装(PHP应用程序)。然后,我将主机(我设计的站点)出售给客户端,这非常简单,因为我只需单击一个按钮,即可添加具有我想要的任何设置的新共享主机帐户/站点。此外,我然后利用WHMCS来自动执行计费和帐户管理。

这是一个很好的程序包,非常简单。我每月支付约25美元,并且可以在此下卖出100个帐户(因为我的客户带宽要求较低)。

现在,我发现有必要开发更多的定制应用程序,包括简约的CMS和一些专有的东西。我很快希望也能为客户开发这些应用程序。因此,过去几个月我一直在学习Rails,现在进展顺利。

一直困扰我的是部署问题。我无法缠住它。似乎所有流行的选项(Heroku等)都具有很好的git自动化功能,并在“ Rails Way”中进行了设置。我知道(有点)。但这是非常昂贵的...一个不限5MB的dyno,helper和最便宜的数据库(他们说主要是适合测试的)最便宜,价格为51美元。这是一个应用程序!投入一个“生产”数据库,您将超过200美元。这就像...与在某处放置服务器的价格一样,对吗?

同时,回到我认为是Hostgator的“传统”托管环境,他们的服务器仅具有Ruby 1.8.7和Rails 2.3.5 ...没有Rails3。而且,没有乘客(不是我真正理解了区别)在CGI或mod_rails或其他版本中,但他们说“乘客”是最简单的)。所以我要理解,如果我在Rails 3中构建一个应用程序,它将根本无法在此主机上运行吗?但是,该死,我的转销商帐户下已经有这些帐户了,它们都运行静态的html和/或PHP,对吗?所以现在怎么办?如何在一个简单(且价格合理)的屋檐下获得所有这些?

原谅我的无知,但我不明白。管理VPS很酷,但是却需要学习服务器管理员的知识和安全性……而且价格昂贵。我发现共享的和/或转售的“基于服务器的”(原谅术语)可能不足以使用占用大量带宽的大型应用程序……但是对于那些正在构建真实应用程序(但体积很小)的人呢?和低带宽)应用程序(使用Rails),谁想使用与PHP相同的概念方法简单,廉价地部署它们?即使在学习了所有这些Ruby和Rails内容几个月之后,我仍在质疑在部署方面是否值得。我想构建一个小型应用程序,将其上传到共享服务器帐户的主目录中,然后使其运行。为什么要这么难?我是在选择错误的语言/框架吗?

原谅我对这个问题的无知;这些问题不是反问。只是想在这里学习。

所以:

1)如果有人能给我很好的了解如何理解Rails与PHP部署的信息,我将不胜感激。

2)如果有人可以解决围绕转售商托管(Hostgator)开展托管/网络业务而又能够托管Rails应用程序的问题,我将不胜感激。能做到吗 像Hostgator这样的公司怎么能完全忽略Rails / Ruby的最新发展呢?

谢谢。


2
+1而不是说:“嘿,我只是租一个VPS!我不会因为被自动更新而被黑,对吗?”
Pekka

4
@closevoters(如果必须关闭投票),至少要投票将其迁移到serverfault或网站管理员。这是一个很好的问题,根本没有争议
Pekka

Answers:


9

尽管Rails托管可能永远不会比PHP便宜,但是由于基础结构要求始终很高,因此托管Rails站点并不昂贵。

正确部署基于Linux的服务器并在Rails以及所有相关的数据库后端上进行加载确实需要一定的技术技能,但这并不是不可克服的障碍。任何称职的程序员都可以在几天之内提高速度,每天只需几个小时,就可以获得一本不错的参考书。无论如何,这是一件很有价值的事情,因为它可以帮助您调整部署环境。

许多“开箱即用”的Rails托管系统都很昂贵。EngineYard的Joyent公司Heroku的是,伟大的例子,但在任何情况下他们并结转自托管替代的溢价。

如果您有一个可以负担得起溢价的客户,则值得利用他们的专业知识。如果您的预算非常紧张,则可能无法证明这一点。

我知道,最省钱的Rails托管解决方案是使用标准分发版的LinodePassenger结合使用。通过一些基本的调整,没有什么特别困难的,即使您提供的是最便宜的产品,您也可以托管中小型站点。一台具有512MB内存的机器通常可以承载2到3个轻载的Rails站点或一个繁忙的站点。轻载意味着每天有数百名访客。忙碌成千上万。

实际上,我在共享PHP托管方面遇到了很多麻烦,以这种方式节省成本是不值得的。相反,我在Linode上有几个VPS系统,这些系统专门用于PHP托管,通常是WordPress博客,并且它们的性能非常好。尽管您可能会发现不得不偶尔打补丁并对机器进行打扰是很麻烦的,但至少您可以安排它并预测潜在的问题,而不是受提供商的支配。

商品托管公司经常会意外破坏东西,而恢复服务可能是麻烦的检票和打电话的过程。

部署任何应用程序(Rails或其他方式)都与工作流有关。CapistranoChef等许多面向Ruby的工具可以使管理应用程序比手动方法容易得多。

我对Rails的看法:价格可能会更高一些,但是一旦习惯了这些工具并使工作流程自动化,它的管理就会容易得多。


1
有关如何托管Rails的良好概述,+ 1。关于自我托管的事情是,您必须对此有所了解,留出一些时间经常照顾您的盒子,并知道在半夜发生这种情况时怎么办。那就是让我一直远离的地方
Pekka

5

不是回答您的问题,而是说实话,当我读到有关您的业务设置时,我最初的冲动是:“为什么他不只是坚持使用PHP?”

不要误会我的意思:我确信Ruby是一门优美的语言,Rails是一个出色的框架,并且在许多方面它在很多方面都优于PHP。对于开发人员来说,探索新领域等也很棒。

但是从纯粹的业务角度来看,PHP可以说在目前的三个重要方面处于“现状”:

  • 廉价托管,以及

  • CMS软件可满足每种口味,大小,技能水平和要求以及喜欢的颜色。其中一些甚至可以中途使用,并且

  • 负担得起的开发人员,其中一些甚至中途。

因此,如果我是您,我将研究是否可以首先使用PHP满足您的要求。

否则,请+1提出一个非常深思熟虑的问题,看到结果将会很有趣。我已经看到了负担得起的rails托管,但它之间相差无几。


听起来,根据您的描述,PHP在各个方面都处于中间位置。就环境而言,这实际上并没有那么糟糕,而且从业务角度来看,除了编码之外,它只是另一个组件的一个组件。您拥有什么样的开发人员可能是驱动因素。
tadman 2011年

谢谢。我希望我没有对这个问题发动战争,并且不会将其转移到这个问题上。只是想从企业和有抱负的开发人员的角度来解决这些问题(对任何特定语言或范例都没有真正的依恋)。

@rcd,不客气。唯一的问题是,在Serverfault.com或Webmasters.SE上,此问题可能会更好-如果五个人相应地投票,它将自动迁移到那里。
Pekka

听起来不错; 从现在开始,我将牢记这些站点;如果我应该做一些事情将其移到那里(或者应该将其重新发布到那里),请告诉我;我可能没有意识到这样的功能。

3

我找到了一个很好的Rails共享主机:webfaction。我对此非常满意。一探究竟!价格低得惊人,它们提供滑轨的一键式安装程序,您可以托管的站点数量是无限的。他们最高支持的rails版本是3.0.5!:)您可以通过ssh方式访问共享,因此具有完全控制权,可以使用capistrano进行部署,也可以手动在服务器上进行操作。非常棒。

他们的文档非常好,并且对于所有其他问题,他们都有一个非常活跃的支持论坛。


1

解决这个老问题的一个很好的新方法是数字海洋

我们部署了Rack应用,这并不难。定价从$ 5 /月/应用开始。

他们有一个用于Rails 的一键式应用程序,这应该使事情变得更容易。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.