BT

JRuby 1.7.0がリリース: Ruby 1.9モードがデフォルトに。 InvokeDynamicが使える。

| 作者: Mirko Stocker フォローする 0 人のフォロワー , 翻訳者 編集部N フォローする 0 人のフォロワー 投稿日 2012年10月30日. 推定読書時間: 2 分 |

原文(投稿日:2012/10/25)へのリンク

 

最初のプレビューリリース (InfoQの記事を参照) から5ヶ月で、後で2つ目のプレビューリリースとなる、JRuby 1.7.0 の最終バージョンがリリースされた。

JRuby 1.7の最も際立つ変更は、Ruby 1.9.3がデフォルトのランタイムモードであるが、まだ1.8.7をサポートすることである。多くの1.9非互換性が修正されたが、 Ruby 1.9の全てが完全にはサポートしていない。リリースノートからの引用:

我々は、Ripperのように、未だ1.9でサポートしていない部分があることを知っています。しかし、我々は、人々が JRuby を1.9モードで使って本番アプリをホストできる安定した所にいます。現時点で、当面の間、2,3週間毎に1.7.xのポイントリリースを公開する計画です。これらのポイントリリースは、ユーザー経験した、あらゆる報告された問題に対処します。そして未だ開発が終わっていない幾つかの抜けている1.9ライブラリもリリースします。

Java 5のサポートは落とされた。 Rubygems と Rakeがそれぞれ 1.8.24 と 0.9.2.2にアップデートされた。

JRubyの1.7では、Java 7のinvokedynamicのを利用しているが、最初のプレビューリリースとは違って、それはデフォルトでオフになっている。JRuby wikiにその理由を説明している。

OpenJDK 7 の現在のリリースバージョンは、時々エラーになるし、コードを最適化するのに失敗する。一貫したJRuby経験を提供するために、Java7では invokedynamicの使用をデフォルトでオフにした。

エラーやパフォーマンスの低下に陥らないアプリケーションの場合は、invokedynamicは、最高のパフォーマンスのためにお勧めする。 それは、強制的にJRuby(またはJRUBY_OPTSで)に-Xcompile.invokedynamic=trueを渡すことによって、またはJVMレベルでjruby.compile.invokedynamic = trueプロパティを設定することにより有効にすることができます。

JVMのJava 8ビルドでは、invokedynamicはデフォルトで有効になっている。

あなたは、 invokedynamicを有効にして、 JRuby 1.7を試しましたか? あなたのアプリケーションでどのくらいパフォーマンスが改善しましたか?

 

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには InfoQアカウントの登録 または が必要です。InfoQ に登録するとさまざまなことができます。

アカウント登録をしてInfoQをお楽しみください。

あなたの意見をお聞かせください。

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

このスレッドのメッセージについてEmailでリプライする
コミュニティコメント

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

このスレッドのメッセージについてEmailでリプライする

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

このスレッドのメッセージについてEmailでリプライする

ディスカッション

InfoQにログインし新機能を利用する


パスワードを忘れた方はこちらへ

Follow

お気に入りのトピックや著者をフォローする

業界やサイト内で一番重要な見出しを閲覧する

Like

より多いシグナル、より少ないノイズ

お気に入りのトピックと著者を選択して自分のフィードを作る

Notifications

最新情報をすぐ手に入れるようにしよう

通知設定をして、お気に入りコンテンツを見逃さないようにしよう!

BT