私のアプリケーションは現在、バックエンドとしてRedisと一緒に Spring Session を使用しています。
Spring Sessionの 公式ドキュメント を検索しましたが、そのモジュールを使用したときのデフォルトのセッションタイムアウトを見つけることができませんでした。
また、必要に応じてデフォルトのタイムアウトを変更する方法がわかりません。
誰かがアドバイスしてもらえますか?
Redisリポジトリを使用するときにセッションタイムアウトを設定する最も簡単な方法は
_@EnableRedisHttpSession(maxInactiveIntervalInSeconds = 60)
_
セッションは、リポジトリで使用できなくなると期限切れになります。タイムアウトは、RedisOperationsSessionRepository
とMapSessionRepository
の両方でsetDefaultMaxInactiveInterval(int)
を使用して設定できます。デフォルト値は分です。
スプリングブートを使用している場合、バージョン1.3以降、アプリケーション構成の_server.session.timeout
_プロパティと値が自動的に同期されます。
Springセッションを使用する場合の欠点の1つは、_javax.servlet.http.HttpSessionListener
_ sが呼び出されないことに注意してください。
セッション有効期限イベントに対応する必要がある場合は、SpringアプリケーションのSessionDestroyedEvent
アプリケーションイベントにサブスクライブできます。
server.session.timeout
は廃止され、Spring Boot 2.0ではserver.servlet.session.timeout
に置き換えられました。