起動失敗の処理

メッセージリスナーコンテナーは、アプリケーションコンテキストがリフレッシュされると起動されます。デフォルトでは、起動中に発生した障害はすべて再スローされ、アプリケーションの起動は失敗します。この動作は、対応するコンテナープロパティの StartupFailurePolicy を使用して調整できます。

利用可能なオプションは次のとおりです。

  • Stop (デフォルト) - 例外をログに記録して再スローし、アプリケーションを事実上停止します。

  • Continue - 例外をログに記録し、コンテナーを実行していない状態のままにしますが、アプリケーションは停止しません。

  • Retry - 例外をログに記録し、コンテナーを非同期的に起動しようとしますが、アプリケーションは停止しません。

デフォルトの再試行動作は、各試行の間に 10 秒の遅延を置いて 3 回再試行することです。ただし、対応するコンテナープロパティでカスタム再試行テンプレートを指定できます。再試行回数が尽きた後にコンテナーが再起動に失敗すると、コンテナーは非実行状態のままになります。

構成

Spring Boot 付

Spring Boot を使用する場合、コンテナーの起動プロパティを設定する PulsarContainerFactoryCustomizer<ConcurrentPulsarListenerContainerFactory<?>> Bean を登録できます。

Spring Boot なし

ただし、代わりにコンポーネントを手動で構成する場合は、メッセージリスナーコンテナーファクトリを構築するときに、コンテナーの起動プロパティをそれに応じて更新する必要があります。