领先一步
VMware 提供培训和认证,助您加速进步。
了解更多我们很高兴地宣布 Spring Cloud Task 2.0.0.RELEASE 现已在 Github 和 Pivotal 下载仓库中提供。非常感谢所有为此版本做出贡献的人。
Spring Cloud Task 2.0.0.RELEASE 是与 Spring Boot 2 对齐的框架版本。1.2.x 的更新包括:
让我们更详细地了解这些更新。
如前所述,这是通用可用版本,它使 Spring Cloud Task 与 Spring Boot 2 对齐。这包括更新所有依赖项以及将 Java 的最低版本更新到 JDK 8+。
Spring Cloud Task 旨在用于在云环境中执行有限的工作负载。许多属于该类的工作负载需要串行执行。防止给定任务的多个实例执行具有重要的价值。此版本增加了防止同一时间执行给定任务的多个实例的功能。此功能基于 Spring Integration 内置的分布式锁定机制。一旦包含 Spring Integration 的必需依赖项(具体来说是 spring-integration-core 和 spring-integration-jdbc),您就可以配置任务上的单个属性(spring.cloud.task.singleInstanceEnabled=true)来防止多个实例执行。如果此属性设置为 true(默认为 false),则在第一个任务运行时第二次尝试执行该任务会导致第二个任务执行失败,表明该任务正在运行。
有关此功能的更多信息,请参阅文档 此处。
默认情况下,在 Spring Boot 中运行 Spring Batch 作业的机制会记录任何作业失败并愉快地继续进行。然而,这意味着运行 Spring Batch 作业的任务总是会成功完成。此版本支持使失败的 Spring Batch 作业导致其包含的任务失败。与 Spring 的所有事物一样,我们使其难以消耗……只需设置属性 spring.cloud.task.batch.failOnJobFailure=true(默认为 false)。设置此属性后,如果在配置的任务中运行了作业并且作业失败,则任务将导致失败(通过退出代码 1 指示)。
有关此功能的更多信息,请参阅文档 此处。
我们期待您在 Github、StackOverflow、Gitter 或直接通过 Twitter @michaelminella 对这些新功能提出反馈!