5

I went through the Introducing Spring Cloud Task, but things are not clear for the following questions.

I'm using Spring Batch

  1. What's the use of Spring Cloud Task when we already have the metadata provided by Spring Batch ?

  2. We're planning to use Spring Cloud Data Flow to monitor the Spring Batch. All the batch jobs can be imported into the SCDF as task and can be scheduled there, but don't see support for MongoDB. Hope MySQL works well.

What is the difference between Spring Cloud Task and Spring Batch?

PAA
  • 1
  • 46
  • 174
  • 282
Jeff Cook
  • 7,956
  • 36
  • 115
  • 186

1 Answers1

10

Spring Cloud Task has a broader scope than Spring Batch. It is designed for any short lived task, including but not limited to (Spring) Batch jobs. A short lived task could be a Java process, a shell script, a Docker container, etc. Spring Cloud Task has its own meta-data tables to track the progress/status/stats of tasks.

In the context of Spring Batch, Spring Cloud Task provides a number of additional features:

  • Batch informational messages: ability to emit messages based on Spring Batch listeners events. Those messages can be consumed by streaming apps and make it possible to bridge tasks and streaming apps.
  • DeployerPartitionHandler: an additional partition handler that is suitable to cloud environments to dynamically deploy workers in a remote partitioning setup.
Mahmoud Ben Hassine
  • 28,519
  • 3
  • 32
  • 50
  • 3
    Spring Cloud Task simplifies moving spring batch apps to a cloud environment. Like Mahmoud said, it fits along side Spring Batch. In order to launch Spring Batch Jobs in SCDF you will need to add the @EnableTask annotation. – Glenn Renfro May 04 '20 at 13:30