GlassFish v3 Gem - 0.1.1 available
現在開発が進むGlassFish v3から、JRuby用のgemの新しいバージョン0.1.1がリリースされました。
GlassFish gemはRailsアプリケーションをJava アプリケーションサーバーGlassFish上にコマンド一つで、起動・デプロイできるというものです。
このバージョンの改良点は以下の通り。
1. gemの名前がGlassFishからglassfishに変更
2. 0.1.0ではアプリケーションが/<application_name>にデプロイされていたのが、WEBrickやthin, mongrelと同様に、/にデプロイされるように
3. HTTPポートがこれまでの8080から3000に変更、またSSLも8181から3131、管理ポートも4848から3838に変更
4. 複数のRailsアプリケーションインスタンスを起動したい場合、これまでは-J-Djruby.runtimeで指定していたものを
glassfish_rails <application_name> -n <instance_number>
で指定可能に
インストール方法と使い方ですが、まず前提としてJRuby版のgemにパスが通っているものとします。
インストール方法
1.v.0.1.0がインストールされている場合はアンインストールします。
$ sudo gem uninstall GlassFish
2.v.0.1.1をインストールします
$ sudo gem install glassfish
これでインストールされ、JRubyのバイナリと同じディレクトリに、glassfish_railsというコマンドが作られているはずです。またGlassFish本体は
$JRUBY_HOME/lib/ruby/gems/1.8/gems/glassfish-0.1.1-universal-java
にあります。
使い方
WEBrickやthin, mongrelはアプリケーションルートディレクトリーの中で、起動させますが、GlassFishはアプリケーションルートディレクトリーの一つ上のディレクトリで起動させます。
また引数としてアプリケーション名を与える必要があります。
つまり、ルートディレクトリが/Sample/test_appの時、thinの場合
$ cd /Sample/test_app
$ thin start
となりますが、
GlassFishの場合
$ cd /Sample
$ glassfish_rails test_app
となります。このとき複数インスタンス起動させたい場合は、
glassfish_rails test_app -n 2
というように行います。
v.0.1.0はかなり不安定で、パフォーマンス的にも今ひとつでしたが、今回は非常に安定しているように思われ、パフォーマンスの改善もみられます。ただ現在Railsで最速といわれるnginx+thinの組み合わせと比べた場合、どの程度のパフォーマンスかはわかりませんが。。。
また次のバージョン、v.0.1.2では以下のような拡張が計画されているようです。
1. RAILS_ENV環境変数のサポート。(v.0.1.1ではサポートされていません)
2. コマンド引数でポートの変更を可能に
3. 近頃話題の軽量フレームワークMerbのサポート。
今後の展開が非常に楽しみです。
次回はGlassFish gem v.0.1.1を使って、話題のRSSリーダFastladderをJRuby on Railsで動かしてみたいと思います。
2008/02/15 by Tomo Nozawa
« Snippet on NetBeans | メイン | JRuby 1.1 RC2 Releas... »