9
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

SpringBootの起動を高速化する

Posted at

はじめに

新たに作成した仮想環境でSpringBootのアプリケーションを起動したら、起動に4-5分かかってとても試験に使えない状態だたったので調査しました。

環境

  • OS:CentOS 7.3
  • Java:OpenJDK 1.8_191
  • tomcat:8.5.24
  • SpringBoot:1.5.12.RELEASE

解決法

以下の記事を参考にした。macの記事だけどLinuxでも同じことをやってみた。
MacOSでJDK8が重い問題

hostsファイルにhostnameを記載する

hostnameを確認

[user@hoge ~]$ hostname
hoge.local ←この値をコピーしておく
[user@hoge ~]$

hostsファイルに追記

[user@hoge ~]$ sudo vi /etc/hosts

localhostの行にコピーしておいたホスト名を追記

-127.0.0.1 localhost
+127.0.0.1 localhost hoge.local

保存して終了

実行してみる

war形式にしたSpringBootアプリケーションを配置したtomcatを起動して検証してみました。

処置前

catalina.out
[localhost-startStop-1] deployDirectory Deployment of web application directory [アプリ名] has finished in [212,763] ms

処置後

catalina.out
[localhost-startStop-1] deployDirectory Deployment of web application directory [アプリ名] has finished in [12,890] ms

比較

かなり高速化されました。

起動時間(ミリ秒) 起動時間(秒)
処置前 212,763 212
処置後 12,890 12

おわりに

参考記事に貼られていたstackoverflowの記事はSpringBootには関係のない記事に見えますが、相当な高速化がされましたね。
SpringBootの起動時に環境の情報を取得したりしているのでしょうか。参考記事的にはJDKの問題?(詳しい人教えてください)

この方法で、tomcatから実行しないjar形式のSpringBootアプリケーションの起動も高速化されました。

9
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?