よかろうもん!

アプリからインフラまで幅広くこなすいまどきのクラウドエンジニアが記す技術ブログ

JRuby と Grizzly

やっと表題を試してみました!

セットアップは簡単で、JRubyrailsをインストールしている環境なら、5分で試すことができます。

  • grizzlyのダウンロード

$ wget http://download.java.net/maven/2/com/sun/grizzly/bundles/grizzly-jruby-webserver-1.6.0.zip

  • 解凍

$ unzip grizzly-jruby-webserver-1.6.0.zip

  • 実行

$ java -jar jruby-1.6.0.jar ~/redmine-0.6.3

すると起動時に以下のような出力。

2008/02/01 0:12:42 com.sun.grizzly.standalone.StaticResourcesAdapter
情報: New Servicing page from: /home/user/redmine-0.6.3/public
/home/user/redmine-0.6.3/vendor/rails/actionmailer/lib/action_mailer.rb:49 warning: already initialized constant MAX_LINE_LEN
2008/02/01 0:12:53 com.sun.grizzly.standalone.StaticResourcesAdapter
情報: New Servicing page from: /home/user/redmine-0.6.3/public
2008/02/01 0:12:53 com.sun.grizzly.http.SelectorThread displayConfiguration
情報:
Grizzly configuration for port 3000
maxThreads: 20
minThreads: 5
ByteBuffer size: 8192
useDirectByteBuffer: false
useByteBufferView: false
maxHttpHeaderSize: 8192
maxKeepAliveRequests: 256
keepAliveTimeoutInSeconds: 30
Static File Cache enabled: false
Stream Algorithm : com.sun.grizzly.standalone.StaticStreamAlgorithm
Pipeline : com.sun.grizzly.http.LinkedListPipeline
Round Robin Selector Algorithm enabled: false
Round Robin Selector pool size: 0
recycleTasks: true
Asynchronous Request Processing enabled: true

起動時に様々なオプションが指定できるのですが、今回は特に指定をせずに動かしてみた。

ここまではよかったが、3000番ポートにアクセスしたら・・・

2008/02/01 0:19:48 sun.reflect.NativeMethodAccessorImpl invoke0
情報: SQL (0.001000) SET SQL_AUTO_IS_NULL=0

2008/02/01 0:19:48 sun.reflect.NativeMethodAccessorImpl invoke0
情報: Issue Columns (0.017000) SHOW FIELDS FROM issues

2008/02/01 0:19:49 sun.reflect.NativeMethodAccessorImpl invoke0
情報: Project Columns (0.012000) SHOW FIELDS FROM projects

2008/02/01 0:19:49 sun.reflect.NativeMethodAccessorImpl invoke0
情報: java.lang.NullPointerException: null

ヌルポかよ・・・。
JRuby + goldspikeではきちんと動作したのだが。

Grizzlyの今後に期待したいものです。