Thursday, October 25, 2007

JRuby 1.1 on Rails: More Performance Previews

Nick Sieger, a Sun coworker and fellow JRuby core team member, has posted the results of benchmarking his team's large Rails-based project on MRI and the codebase soon to be released as JRuby 1.1 (trunk). Read it here:


Now there's a couple things I get out of this post:
  1. JRuby on Rails is starting, at least for this app, to surpass MRI + Mongrel for simple serial-request benchmarks. And this a week before the 1.1 beta release and all the continuing performance enhancements we know are still out there. I think we're gonna make it, folks. If this continues, there's no doubt in my mind JRuby 1.1 will run Rails fastest.
  2. JRuby on Rails will perform at least as well as MRI + Mongrel for the app Nick and his teammates are building. Several months ago they committed to eventually deploying on JRuby, and if you knew what I know about this app, you'd know why that scared the dickens out of me. But I'm glad the team had faith in JRuby and the JRuby community, and I'm glad we've been able to deliver.
I hope we're approaching a time when people believe that JRuby is the real deal--an excellent choice for running Rails now and potentially the best choice in the near future. There's always more work to do, but it's good to see the effort paying off.

Give it a try today, why not?

8 comments:

Susan Davis said...

We originally planned to deploy our app on JRuby on Rails, too, and dropped it after looking at the numbers we were getting from our performance tests, and some hassles with getting Goldspike to work well. We'll have to take a second look at it....

Unknown said...

can't wait 2 ty out other deployment options rather than mongrel

Limitless said...

We are running a huge portal using Ruby on Rails and I was disappointed when I found that it was not supporting using native libraries. The problem appeared what I tried gettext and rmmagick.

Any effort regarding this area ?

Thank you

Rich said...

We're a few weeks away from launching a large app on jRuby on Rails (http://oracleappslab.com/2007/10/18/jruby-on-rails-application-on-an-oracle-appserver/) And thanks to the work that you guys have done, our perf tests are looking very promising.

Thanks!

Anonymous said...

Hi Charles,
DreamsMaker made the point that jruby will not support native libraries.Is this true ?

Charles Oliver Nutter said...

DreamsMaker, Anonymous: Yes, it is true that JRuby does not support native C Ruby extensions. However this generally hasn't hindered JRuby on Rails developers. Basically all functionality available through Ruby extensions is available through Java libraries, and if what you need is only available in a C-based library, we also support using JNA to hook it up.

Anonymous said...

Thanks for the reply Charles.
Regarding native c support , do you do you think this might limit the amount of existing rails apps which would like to use JRuby instead of MRI.If i understand you correctly my existing rails app which uses Acts as Attachment plugin (which needs native ImageMagick under the hood) would not work with JRuby out of the box?

Charles Oliver Nutter said...

Anonymous: Yes, that's correct; anything that uses RMagick will not currently work, though there's a Java port in progress. I think it primarily limits only existing apps that want to migrate between environments and still use native extensions. It should require only a little ceativity and maybe a little porting to bring up new apps or existing apps entirely on JRuby.

In general, I feel that while extensions provide a lot of nice features for Ruby, they're also a primary reason for its progress being held back.