簡體   English   中英

是mod_rails還是Phusion Passenger最終是Ruby on Rails部署的答案?

[英]is mod_rails or Phusion Passenger finally the answer to Ruby on Rails Deployment?

我從一些書中了解到Phusion Passenger是輕松進行Ruby on Rails部署的答案。 但是我的朋友說,首先是Apache +一堆Mongrels,然后是lighttpd,然后是nginx,現在是Passenger,這似乎無窮無盡...

他還說,他使用的Dreamhost使用的是Passenger,有時他會看到自己的請求未得到處理。

因此,我想知道“乘客”是否是RoR部署的最終答案? 您是否使用它並使用“ ab”命令來測試站點是否運行良好?

簡短的回答:是的。

長答案:yeeeeeeeeeeeeeeeeeeessssssssssssssss。

嚴肅地說,Phusion Passenger和Ruby Enterprise Edition消除了將Rails應用程序投入生產的所有痛苦。 以前的方法(包括運行一套Mongrels)需要圍繞Passenger透明處理或通過簡單的Apache(或nginx)配置選項處理的啟動,停止和回收偵聽器進程進行大量設置。 REE的補充垃圾收集器意味着,派生一個新的偵聽器使用的內存更少,並且啟動速度更快(在Passenger的“智能”生成模式下)。

編輯:@srboisvert提出了一個很好的觀點; 乘客並不是部署RoR的最終答案,但到目前為止,這是我最喜歡的。 有一天,在解決了許多艱巨的工程問題之后,主流Ruby可能會從使用多進程模型托管RoR遷移到單進程模型,這將使​​管理工作比使用Passenger更加容易。

到目前為止,這是最好的解決方案。 我開始使用FCGI進行部署,這很痛苦。 然后是雜種,它更好。 然后出現了mod_rails,而且效果更好。

另外,許多大型的很酷的應用程序正在遷移到mod_rails,其中包括一些37signals,因此您知道這很好。

我將以DHH的報價結尾:

Phusion Passenger的一體式解決方案

完成極其簡單的安裝后,您將獲得一個既充當Web服務器,負載均衡器,應用程序服務器又充當進程監視程序的Apache。 您只需放入您的應用程序,然后在想要啟動並運行bam時觸摸tmp / restart.txt,即可啟動並運行。

但是,以某種方式,“乘客”的信息陷入了一點緩慢。已經有大量的大型站點在運行它。 包括Shopify,MTV,Geni,Yammer在內,我們將很快移至首個Ta-da List,然后希望此后37signals套件中的其余部分很快。

因此,盡管仍然有理由運行自己的手動多層配置的自定義多層設置,就像有些人不願透露mod_php的詳細信息一樣,我認為我們終於找到了默認答案。 不需要您真正考慮一下Rails應用程序的第一次部署的事情。 開箱即用的東西。 即使那個盒子是共享主機!

總之,Rails不再難以部署。 Phusion Passenger使其變得異常簡單。

通過

是的,它是最簡單,最快和最有效的解決方案。 在最近發行版中解決了許多諸如soap4r等寶石問題之后,Patient現在是部署問題的答案。

我們在平衡的環境中運行Apache / mod_rails,其中HAProxy位於2台服務器的前面。 它比我們以前使用Mongrel / Aapache的設置可靠得多。

掌控權非常容易

  • Apache中運行的乘客進程數量
  • 每個應用程序運行的旅客流程數量
  • 無需調整許多配置文件,例如mod_proxy,Apache。
  • 設置虛擬主機並將3行添加到您的Apache配置中基本上足以使其運行

馬特

最后的答案? 沒有什么是最終的答案。

我會說,旅客是目前的答案。

是。 自幾周前他們發布2.2.0版本以來,我一直在Apache之前運行Nginx / Passenger,以解決仍然需要PHP的問題。 特別是在Ruby Enterprise Edition中,它接近了我所謂的“完美”。

我想現在人們將堅持使用mod_rails很多年了。 該模塊真的很好。 配置非常簡單。 很難用更好的解決方案代替它。 類似於mod_php。 唯一缺少的關鍵組件:Windows端口。

在某些情況下(企業等), JVM也是一個不錯的選擇。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM