BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage News JRuby 9K Expected in 2014 Ready for Production

JRuby 9K Expected in 2014 Ready for Production

This item in japanese

Bookmarks

During his talk at the Baruco conference Charles Nutter, one of the lead developers of JRuby, announced the release of version 9000 (9K) in 2014 (Q2 or later). The new release targets the same feature set as Ruby MRI 2.0 and possibly 2.1 as well. Charles also provided insight on the motivation behind the Ruby implementation for the Java Virtual Machine (JVM) and built the case for using JRuby 9K in production.

JRuby 9K will run on Java 7 only and the development team (partially supported by Red Hat) hopes to align its functionality roadmap with Ruby MRI’s. The unusual version name came about as the team realized the next natural JRuby version would be either 1.8 or 2.0 and thus decided to avoid confusion with the Ruby MRI versions by using 9000.

According to Charles, aligning the functionality and taking advantage of the JVM evolution in areas such as garbage collection and performance will make JRuby 9K a strong contender for use in production systems. According to Charles’ benchmark JRuby running on Java 7 slightly outperforms Ruby MRI 1.8 in response time and largely outperforms Ruby MRI 2.0 in garbage collection time when memory usage goes upwards of 200 MB. The following chart shows another of his benchmarks running an implementation of the red/black tree algorithm across multiple Ruby flavors:

Another trending topic where JRuby differentiates from the MRI is support for advanced concurrency using multi-cores. Charles recommended testing real multi-threaded execution using JRuby but also warned that the Ruby ecosystem still needs more mature tools to support them. Nevertheless existing libraries such as thread_safe, Hamster, atomic or jo can already go a long way in preventing unsafe operations such as thread pooling and coordination, concurrent read/write on core structures or common non-atomic updates such as:

@count += 1
@cache ||= MyCache.new

Other advantages of building on top of the JVM mentioned by Charles are its portability and availability (even on organizations with tightly controlled development environments) but also the ecosystem of libraries in Java, Scala or Clojure that can be called from JRuby in a straight forward way.

Other Baruco speakers such as Vicent Martí and Chris Kelly manifested their support for JRuby as an alternative to MRI along with Rubinius, incentivating conference participants to contribute to their development.

 

Rate this Article

Adoption
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Community comments

  • Sensationalist title?

    by Ralph Poellath,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    The title sounds as if JRuby 9K was production ready. Turns out that JRuby 9K does not yet exist and obviously isn't production ready. Meh.

  • Re: Sensationalist title?

    by Manuel Pais,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Thanks for your comment Ralph.

    I would agree with you if the title said simply "JRuby Production Ready" but it mentions explicitly the version and in the first sentence you already have the estimated release date.

    We want titles to be precise but also to convey the core information at a glance. I think the title meets both criteria.

  • Re: Sensationalist title?

    by Matt Giacomini,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    "We want titles to be precise but also to convey the core information at a glance. I think the title meets both criteria."

    I think you meant.

    "We want this title to generate as many hits as possible. Yeah it is totally misleading, but whatever."

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

BT