回答
有配置Rails的服務器很多很多不同的方式。我不知道是否有這樣的事情作爲'理想'的配置。我會告訴你我是如何配置服務器的,以及爲什麼。
操作系統:Linux,任何分佈。
這是唯一有意義的服務器平臺。
Ruby社區以Linux爲中心,但BSD也是一個不錯的選擇。我對Linux很滿意。
OSX是一個很棒的開發平臺,但額外的成本並不能真正爲您在服務器端購買任何Linux上無法獲得的東西。而蘋果正在逐步淘汰Xserve平臺,所以有可能在那裏沒有未來。 Don't even think about using Windows。
Web服務器:Apache + Phusion Passenger
我建議Apache的,因爲它是到處。每個人都知道。獲得支持非常簡單。
Phusion Passenger可能是最容易上手的應用程序服務器。這裏有一個示例VirtualHost配置:
<VirtualHost x.x.x.x:80>
ServerName xxxx.com
DocumentRoot /var/www/xxxx/current/public
PassengerHighPerformance on
<Directory "/var/www/xxxx/current/public">
AllowOverride all
Options -MultiViews
</Directory>
AddOutputFilterByType DEFLATE text/html text/css text/plain text/xml application/json
AddOutputFilterByType DEFLATE image/jpeg, image/png, image/gif
</VirtualHost>
就是這樣。 (而且大部分是不是絕對必要)
Ruby解釋器:Ruby Enterprise Edition
我用這個來代替香草MRI,因爲這是一個有點存取效率更高,從而使服務器上有很大的不同。它也與Passenger整合。
REE的一個缺點是它基於1.8.7
。您可能需要使用1.9.2
,因爲它具有顯着的性能優勢。
寶石管理:RVM
RVM,您可以創建針對不同的應用沙盒寶石的環境中,如果有版本衝突。強烈建議您的開發環境。
部署系統:Capistrano
如果你不使用Capistrano的,你應該。這將是您可以爲生產部署做的最大的節省時間。如果問題存在,它也會回滾到以前的版本。
您還應該安裝ExceptionNotifier。如果生產服務器上存在異常情況,您應該瞭解它。
我也強烈建議檢出NewRelic RPM進行分析。即使免費版本提供了一些有用的信息。
- 1. 軌道環境的mixup,開發服務器使用生產DB
- 2. 什麼是家庭服務器的最佳操作系統?
- 3. 設置系統目錄Rails的生產環境
- 4. 資產管道不能在導軌生產環境中工作
- 5. Solaris操作系統設置路徑和環境變量
- 6. 如何設置mapper的系統環境?
- 7. 操作系統是Windows服務器?
- 8. 在Azure中組織環境(服務器)的最佳實踐設置?
- 9. 生產服務器無法識別由Figaro設置的環境變量gem
- 10. 在導軌中設置生產環境3.0
- 11. 在Eclipse中設置服務器環境
- 12. Redis服務器的最佳EC2設置
- 13. php服務器的最佳設置
- 14. SQL服務器的最佳RAID設置
- 15. 日內瓦服務器的最低操作系統要求?
- 16. XAMPP可以用於生產服務器,它具有Windows操作系統
- 17. 系統語言環境語言設置
- 18. Eclipse與系統設置環境變量
- 19. 如何爲Scala Lift Web應用程序設置生產服務器環境?
- 20. 生產環境中的導軌路由
- 21. 生物信息學的最佳操作系統?
- 22. 在生產環境中設置Subdomain-Fu?
- 23. 設置測試和生產環境
- 24. 用於構建服務器和測試環境的最佳虛擬機產品
- 25. 無法生成服務器上PDF(生產環境)
- 26. MongoDB單服務器生產設置
- 27. 多操作系統與SIngle操作系統電話和服務器開發
- 28. PowerShell在緊密循環中產生操作系統
- 29. 環境變量操作系統Ubuntu的沒有設置,但在os.environ
- 30. 如何爲所有類型的操作系統設置環境變量?
很好的答案。 nginx越來越受歡迎,但我認爲你對apache的論點是有道理的。只有我可能會問的是,如果我們在談論軌道3,MRI 1.9.2可能是一個更好的選擇,然後再見。但是1.8.7的ree是一個沒有道理的人。 – 2010-11-10 04:40:10
BSD??? – tchrist 2010-11-10 04:40:41
@tchrist touche! BSD也是一個非常好的服務器。對不起,Linux的盲目。 – 2010-11-10 04:47:51