Spring Boot Tomcatのセッションタイムアウト設定方法
Spring BootでTomcatのセッションタイムアウトを設定する方法です。
Spring BootではTomcatが組み込まれているため、非常に手軽に開発ができる反面、Tomcatの設定ってどこですればいいの?って感じになります。セッションタイムアウトの時間設定もその1つだと思います。
ここでは Spring Boot組み込みTomcatのセッションタイムアウトを設定する方法 を紹介します。
war でパッケージングしてデプロイしているのであれば、デプロイ先 Tomcat の web.xml を変更してください。
Spring Boot組み込みセッションタイムアウト設定変更
Tomcatのセッションタイムアウトを設定する方法は、application.properties(yaml) に、server.session.timeout を追記します。
server:
session:
timeout: 60 # Session timeout in seconds.
設定は秒単位です。1と設定すれば1秒、60と設定すれば1分、3600と設定すれば1時間となります。
参考
・Appendix A. Common application properties
上記ドキュメントの「EMBEDDED SERVER CONFIGURATION」欄は、組み込みサーバーの設定となっています。warで出力して別のアプリケーションサーバーで動かす場合そちらの設定に従います。
まとめ
Spring BootでTomcatのセッションタイムアウトを設定する方法を紹介しました。
多くの場合、本番環境を想定した設定を、テスト時にも設定すると思います。本番環境のセッションタイムアウト設定は2時間なのに、テスト環境では30分ということでは、何かと効率も悪かったりしますね。このように application.properties(yaml) に同じ時間設定をしておけば、トラブルも少なくて済むでしょう。
ちなみに Tomcat セッションタイムアウトのデフォルト値は 1800 (30分)となっています。
おつかれさまでした。