我曾使用过单独的Mongrel,也使用过Mongrel集群在Apache后面运行,我也看过Thin,现在我对Passenger产生了浓厚的兴趣。我也看过Nginx。我还看过MRI、Ruby Enterprise Edition、Rubinius和JRuby。每个选项都声称是新的救世主。
对于一个全新的、完全更新的部署来说,哪个是最佳的选择呢?唯一的假设是:
- 应用程序基于Rails 2.2。(我知道2.2还没有完全发布,但这次部署也没有。)
- 服务器基于Linux。可能是Ubuntu Hardy,但实际上,无论在这种情况下哪种操作系统都可以。
- Rails需要完全可用,并且可能需要与MySQL数据库交互。
- 其他一切都是可协商的。
在特别宽泛的限制下,哪种软件组合将产生最佳结果,以并发性和低开销为考量?
我倾向于使用“worker” mpm和Passenger + Ruby Enterprise Edition的Apache,因为它提供了即时的稳定性和简单的设置和维护。
使用其他选项是否可能会更好呢?