Phusion与Mongrel for Rails应用程序VPS

问题描述:

我正在使用Rails应用程序,它目前托管在共享主机上。但是,它获得了很多需要合理处理的功能,并且我正在考虑将其转移到VPS,云服务器。 我对服务器管理没有经验,但是,由于它是一个简单的应用程序,我想自己管理它。谷歌搜索了一下,我发现一对夫妇的设置选项:Phusion与Mongrel for Rails应用程序VPS

  • 的Phusion客运+ Apache的。这似乎是今天的默认选项。
  • Phusion Passenger + Nginx。 Nginx将自己作为Apache的较轻选项,但后者拥有更多的模块和支持。
  • Mongrel + Apache。我不知道该怎么想Mongrel;我发现的讨论似乎已经过时了,但是关于Mongrels与Apache的集群有一个nice article

那么你有什么建议?该应用程序流量轻,但执行大量处理密集型操作并仅提供几个静态文件。内存消耗很重要,因为在VPS上它们会根据您的需要记帐。而且,由于我是初学者,文档和配置的简易性至关重要。如果服务器支持某种Comet/server-pushing,这也会很好;我打算很快添加它(我无法忍受集中的讨厌想法)。

好,Nginx的是非常简单的配置,我相信的Phusion客运配备了一个installation option是Nginx的下载适合你。还有一个http push module正在开发中,以防您需要使用彗星。内存方面,Nginx的外置存储器占用空间小于Apache。您可能还想安装Ruby Enterprise Edition以进一步减少应用程序的内存占用量。

+0

除非您需要某些特定的Apache模块,否则我会选择此选项。 Nginx配置比Apache更简单。 Nginx确实有相当数量的模块。 安装也很轻松。当你安装乘客宝石时,它会为你编译和安装Nginx。 – 2009-11-23 20:58:33

我会和nginx一起去的。我在VPS上使用了Apache/Passenger和nginx/Passenger,并且使用nginx的内存使用情况更好。我没有对我的特定应用程序做任何基准测试,但nginx感觉更快。

有关安装和配置nginx的一件事 - 您需要在编译时选择模块,而不像Apache那样可以在运行时配置模块。

+0

关于如何在512MB VPS上优化性能,您有什么想法吗?我有Nginx + Passenger运行,偶尔它会填满交换文件,因为太多的红宝石正在被激发(我认为) – Avishai 2011-04-06 13:49:16

我对Apache没有任何问题。非常光滑。没有速度问题或内存问题在我的一端。真的取决于你更熟悉什么或你的规格要求是什么。尽管如此,Engineyard仍然运行在Nginx上,我也有着积极的经验。