Ruby Enterprise Edition与Ruby 1.9

时间:2009-09-09 20:51:19

标签: ruby-on-rails ruby content-management-system ruby-enterprise-edition

我打算建立一个简单的CMS网站,用户可以通过视频,照片和文字提交和查看帖子。

我想做的一个决定是在Ruby Enterprise Edition和Ruby 1.9之间进行选择。

我关心的事情:

  1. 表演&可扩展性。
  2. 与现有gems /插件/开源项目的兼容性。
  3. 开发和部署的速度(我将在VPS上部署)。
  4. 你的建议是什么?

3 个答案:

答案 0 :(得分:15)

根据我的经验,REE倾向于在奇怪的地方抛出malloc(2009年1月在脚本/控制台中完成标签 - https://webrat.lighthouseapp.com/projects/10503/tickets/89-excessive-output-caused-by-and-only-by-running-webrat)。

Ruby 1.9.1在tempfile中有一个巨大的错误,它炸毁了Rack(2009年8月出现在patchlevel 243 - http://groups.google.com/group/rack-devel/browse_thread/thread/a2aab3a4720f34c4?pli=1)。除此之外,我不相信Ruby 1.9.1已经使用Rails 2.3.4(String exclusive或 - https://rails.lighthouseapp.com/projects/8994-ruby-on-rails/tickets/3144-undefined-method-for-string-ror-234)进行了正确的测试。

老实说,这取决于你对惊喜的反应。我在运行2.3.3的服务器上使用旧的补丁级别1.9.1,而不是使用Net :: HTTP中的补丁来使用ActiveResource,它运行速度非常快。

如果您不喜欢惊喜,请坚持1.8.7。

2010年10月10日更新

现在我的问题的答案是无效的,Ruby EE和1.9.2都是非常好的Ruby实现!

我不太确定我会选择哪一个,可能是1.9.2 - 或者坚持说出这些人在做什么,因为他们正在制作一个1.9版的REE - 但是,他们的1.8.7 REE非常稳固。

答案 1 :(得分:7)

如Phusion所述,他们不会开发1.9版本的Ruby Enterprise Edition,并宣布REE的生命终结与MRI Ruby 1.8的生命周期结束。不开发1.9版的原因是

  
      
  • 最近在Ruby 2.0中检查了写时复制补丁。
  •   
  • Ruby Enterprise Edition中的许多补丁在1.9中根本不是必需的。
  •   
  • 我们希望将精力集中在Phusion Passenger和其他产品上。而不是做很多>事情很糟糕,我们想做一些事情,但做得非常好。
  •   

完整帖子可以阅读here

因此我建议使用当前可用的稳定版本的Ruby 2.0.0或以前的稳定版本Ruby 1.9.3。

答案 2 :(得分:1)

我的建议是尽可能使用1.9.2,因为1.9.2比REE和MRI 1.8.7快得多。但请记住,1.9.2像它的MRI 1.8.7并不是一个完整的优化版本,因此与REE相比,你可能会看到更多的RAM被吃掉。如果你还不能升级到1.9.2,我建议你坚持使用REE。

更新:REE刚刚合并了MRI 1.8.7-p334的所有变化,所以它很好而且很热;)