ITエンジニアの成長ブログ

ITエンジニアとして行う勉強の発信&日々の生活で体験した楽しいことをゆるく発信

Tomcatの起動時間を早くする

Tomcatの起動時間を早くする方法はいくつかあるようですが、簡単にできる方法を紹介したいと思います。
この設定を試したTomcatのバージョンは、8.0.x系です。ですが、Tomcat公式サイトを見る限りでは他のバージョンでも設定できそうです。

Tomcatの設定ファイルである、server.xmlに以下のようにHostタグのstartStopThreads属性を設定することで、場合によってはTomcatの起動時間を早くすることができます。

<Host name="localhost" appBase="webapps"
    unpackWARs="true" autoDeploy="true" startStopThreads="0">

Tomcatで複数のアプリケーションを起動する際には、デフォルトでは直列起動しますが、この設定値次第で並列起動することが可能になります。
たとえば、2を設定すれば並列で2つ起動処理が動作するようになります。

因みに、上記設定例では"0"を設定していますが、これは特別な指定方法でそのTomcatを起動しているマシンのCPUコア数分並列起動する意味になるようです。
具体的には、Runtime.getRuntime().availableProcessors()を実行した結果の返される値が使用されます。

startStopThreadsの詳細については、参考のTomcat公式ページをご参照いただければと思います。