我有兴趣在办公室推广JRuby作为托管Rails应用程序的平台。
但它有多可靠?
它的性能是否优于MRI 1.8.7?
JRuby 1.5声称它与Ruby 1.8.7 100%兼容,这是否意味着JRuby可以运行任何 Ruby / Rails代码?
答案 0 :(得分:4)
是的,JRuby很可靠! Oracle使用JRuby for Oracle mix(http://mix.oracle.com/),Sun将其用于Kenai(http://kenai.com),它将成为java.net的下一个基础(来自kenai网站:“工作正在进行中用于将Java.net域迁移到Kenai基础架构“)!!
你可以运行几乎每一个代码,一些宝石使用本机C扩展,而在JRuby中有一个原始的支持,但是...轨道只是工作。
你可以在像Tomcat或JBoss这样的应用服务器中使用Warbler部署Rails应用程序,将Rails应用程序包装在.war文件中,这非常棒!
更新:你可以在这里看到很多基准:http://programmingzen.com/2010/07/19/the-great-ruby-shootout-july-2010/
答案 1 :(得分:2)
JRuby摇滚!简单的原因是它的可移植性和Java库的集成。我个人将它与Netbeans一起使用,随之而来的快速调试器似乎非常方便。另外,您不希望看到本机构建错误并处理它们。您为JRuby下载的所有这些宝石都可以在任何平台上100%运行。使用JRuby,您只需带来Java平台独立性的优势。
此外,JRuby使用本机线程,它使用操作系统线程而不是CRuby中的绿色线程(我认为不是最新版本的情况)
在Gist中,去JRuby !!
答案 2 :(得分:2)
我现在正在做很多非常繁琐的工作,并且可以告诉你,在jruby解释器下,rails肯定是一个可行的选择。我一直很高兴,在我的情况下必须使用许多本机Java库,所以jRuby就是这个java代码的一个很棒的包装器。我会说我遇到了一些技术挑战,其中一些尚未解决,有些尚未解决。
如果你感兴趣的话,我会高度推荐来自语法程序员的试用版jruby book http://pragprog.com
答案 3 :(得分:0)
答案 4 :(得分:0)
免责声明:我在日常工作中不使用jruby - 我只是尝试使用jruby运行现有代码。
这并不意味着它将成功运行所有代码。例如,即使jruby doesn't really support it,bioruby目前在jruby上调用fork。 (这更像是bioruby中的一个错误而不是jruby中的错误)
我不会称这种行为“不可靠”。它是故障安全的,就像plane that would not get off the ground, much less crash。