GAE/JRuby がすごく速くなっている件

RubyGoogle App Engine 用アプリを開発できる「appengine-jruby」っていう gem があるんですが、これを久しぶりに更新したら、すごく速くなっていて驚きました!

何が速くなったかっていうと、初回ロードがすごく速くなっています。以前は表示されるまでに30秒以上待たされていたのが、数秒で表示されるようになりました。感激。

調べたところ、config.ru にその秘密があるようです。

AppEngine::Rack.configure_app(          
    :application => "application-id",           
    :precompilation_enabled => true, # ここに注目!!
    :version => "1")

precompilation_enabled は JRuby アプリのロード時間を短縮するために追加された設定みたい。JRuby のための設定といっても過言じゃないですね。AppEngine チーム様様。

最大の問題点だった初回ロード時間が改善されたので、GAE 用アプリは JRuby で作るように、方針を戻そうかな。ちょっと Python に浮気しましたが、インデントでスコープが決まる仕様は、私の肌に合わなかったです。end や } があると、すごく落ち着きますね。