Spring Kafka中AuthExceptionRetryInterval与RestartAfterAuthExceptions如何交互?
Spring Kafka
AuthExceptionRetryInterval 与 RestartAfterAuthExceptions 的优先级说明 你的假设是正确的:当设置了非null的AuthExceptionRetryInterval时,RestartAfterAuthExceptions的配置会被忽略,容器不会因授权/认证异常停止,而是按照指定的间隔持续轮询重试。
具体逻辑说明:
- 当
AuthExceptionRetryInterval不为null时,框架会将AuthenticationException或AuthorizationException标记为非致命异常,不会触发容器停止的流程。此时容器会在每次异常后休眠指定时长,然后自动恢复轮询,完全不会走到“容器停止后重启”的环节,RestartAfterAuthExceptions自然没有生效的场景。 - 只有当
AuthExceptionRetryInterval为null时,这类异常才会被视为致命异常,导致容器停止。这时RestartAfterAuthExceptions的配置才会生效:如果设为true,容器停止后会自动重启;如果设为false,容器则保持停止状态。
简单来说,AuthExceptionRetryInterval的配置优先级更高,它直接决定了认证/授权异常是否会导致容器停止,而RestartAfterAuthExceptions仅在容器因这类异常停止的前提下才会发挥作用。
内容的提问来源于stack exchange,提问作者solutionsDeveloper
相关产品推荐
相关产品推荐

