我有一个 Spring Boot 应用程序,我想在其中使用 @RefreshScope 功能以便在运行时重新加载外部配置,而无需重新启动服务。
我对这种方法的一个特定潜在缺陷感到非常困惑——如果我刷新一个 bean(使用执行器暴露的端点),而 bean 实际上正在执行一项长期运行的工作,会发生什么?
会不会:
- 立即中断正在运行的 bean(如果我的代码没有为此准备可能会导致问题)?
- 在重新初始化之前优雅地等待 bean 完成其执行?
- 还有什么?
我在网上找不到这个问题的任何明确答案,包括文档。