2010-11-25 71 views
4

打算构建一个Rails 3堆栈并尝试整理出Ruby版本。Rails 3(Ruby 1.9.2 vs 1.8.6)和(MRI vs REE vs JVM) - 评论/建议?

我在JVM的概念很感兴趣,但不是100%肯定,如果它甚至涉及到Rails 3;这意味着为什么不根据需要仅为JVM进行部署。

然后就是heroku saying Ruby 1.9.1中存在一个错误,但是他们没有说错误是什么,如果它是由Ruby 1.9.2解决的 - 或者在Ruby上运行Rails 3会导致什么结果1.8.6。

UPDATE:发现Heroku的间接链接到错误:“需要注意的是红宝石1.8.7 P248和P249有编组的bug崩溃的Rails的Ruby 3.0企业版具备这些固定自发布1.8.7-2010.02虽然。在1.9版本中,Ruby 1.9.1并不可用,因为它完全在Rails 3.0上进行了段错误,所以如果你想在1.9.2上使用Rails 3和1.9.x,以便顺利启动。“

任何有关于这个问题的信息/链接?

谢谢!

+1

* I *推荐1.9+系列为1.9.2,1.8+系列为1.8.7。 1.9.1和1.8.6都有错误,因此下一个版本的发布。 (也由发行说明备份)抛开Bug修复,1.9.2比1.8.7更快,并且,我遇到的唯一不正常的gem是ruby-debug,它被修补并发布为ruby-debug19 。我保持1.8.7的测试(通过我们喜欢称为RVM的迷人),但是我的运行代码在1.9.2以下。 – 2010-11-26 00:01:11

回答

2

如果你在Windows上运行,我个人的建议是去使用JRuby。 MRI(1.9.x和1.8.x版本)在Windows上有许多问题,无论是部署到XP,Vista还是Windows 7。我不经常在Windows上开发,但我确实教了Rails类,这是我的建议。 Windows学生现在。除了需要使用不同的数据库驱动程序(jdbc gem版本)之外,还没有很多JRuby问题。 RVM无法在Windows上运行,但是您可以使用pik(https://github.com/vertiginous/pik)来实现许多相同的目标。

+0

谢谢,原来我在Windows XP专业版(从这个意义上说,它是我最多的操作系统,并已安装);应该说,但我的经验已经是Rails是不是Window;基于我的经验,基于60-80的Rails是在Mac上开发的......然后部署到Linux。所以,如果我使用JVM,这是否意味着我必须使用Trinidad,GlassFish或Tomcat作为应用程序服务器? – blunders 2010-11-26 21:00:16

2

我的建议是,如果你正在开始一个新的Rails 3的项目你绝对应该考虑使用Ruby 1.9.2踢它关闭。 Heroku支持多个堆栈,默认情况下为Bamboo(支持1.9.2以及REE的)。如果您担心宝石兼容性或其他问题,那么您可以对冲您的投注并使用RVM和/或multiruby在多个版本的Ruby中运行测试套件,以便您可以部署到任一运行时。

个人我跑稀土元素一个Rails 2个应用程序和1.9.2一个Rails 3应用程序,并没有任何问题。

如果你没有部署在Heroku和正在建立自己的服务器,那么我会管理你的生产服务器上使用您的RVM Ruby版本,所以你可以很容易地版本之间切换如果有什么不工作。

总结:

可以运行Rails上都REE和Ruby 1.9.2 2级3的应用程序。

+0

+1“heh heh heh,他说'RVM',”用我最好的Beevis声音说道。 – 2010-11-26 00:03:41