Java Servlet Technology

Javaのアプリケーションサーバは年中無休で稼働し続けるタイプのシステムであるため、アプリケーションサーバそのものの起動時間が注目されることはあまりない。一度起動してしまえばJavaの高速化技術によって、稼働するごとに動作が速くなるし、動作速度が問題になることも少ない。

しかし、これが開発段階ということになると話が違ってくる。開発段階ではアプリケーションサーバの停止と起動を繰り返すというのはざらにある状況だ。起動が遅いアプリケーションサーバを使っていたのではストレスを感じてしまう。そうした場合に役立つデータが「Servlet containers, startup time」に掲載された。

Servlet containers, startup time - Afterburnerより抜粋

Glassfish 3.1、Jetty 8.0.0M3、Jetty 7.44、JBoss AS 7、JBoss AS 7 Web Profile、JBoss AS 6、Tomcat 7.0.19、Tomcat 6.0.32の起動時間を比較したというもの。MacBook Pro 5.1でApple JDK 1.6.0-26とOpenJDK7を使って比較が行われている。

JBoss AS 6はグラフに掲載されていないが、これは起動に27秒もかかったためグラフに含めるのが困難だったためだと説明がある。これと比べると、先日リリースされたJBoss AS 7はJBoss AS 6の13倍も起動時間が高速化されていることがわかる。起動時間最速はJetty 8。Jetty 8には届かないものの、Apple JDK1.6.0を使った場合にはTomcat 7も優れた起動時間を実現していることがわかる。