【发布时间】:2015-11-19 05:06:13
【问题描述】:
我们在为我们的 UI 提供服务的同一个 Web 应用程序中的 tomcat 中运行多个 spring 批处理作业。最近我们一直在添加更多工作,我们注意到当我们修补我们的应用程序时,一些工作可能会卡在 STARTING 或 STARTED 状态。其中许多作业在启动之前确保另一个作业没有运行,因此这意味着在我们修补服务器之后,我们的一些作业会中断,直到我们手动运行 SQL 以将作业的状态更新为 ABANDONED 或 STOPPED。
我读过here,JobScope 和 StepScope 作业不能很好地关闭。
那篇文章建议不要使用 JobScope 或 StepScope,但我不禁认为这是一个已解决的问题,人们必须在应用程序退出时做一些事情以防止出现此问题。
是否有一些处理这种情况的最佳做法?你在你的应用程序中做什么?
我们使用的是 spring-batch 版本 3.0.3.RELEASE
【问题讨论】:
-
范围 参考文章中的问题不负责 STOP 不起作用,那里的作业配置完全错误(范围未使用且在提供的示例中无用)
标签: java spring tomcat spring-batch