We have a JEE app running across 10 servers in a cluster. It utilized Spring Batch (2.2.7) and Spring Batch Admin (based on 1.3.0 with some minor modifications) to execute around 100 jobs nightly. The control of batch job execution is via the spring batch admin rest API. About half of the jobs are partitioned, distributing the load around the cluster.
Now we are looking at moving to new Spring versions replacing the JEE technologies and going with Spring Data(JPA) etc. However at this point due to a variety of reasons, we intend to keep the monolithic approach running over a cluster of servers.
I am investigating the best path forward on the Spring Batch / Spring Batch Admin front. I would like to move to Spring Batch 4.1. Some of the issues are :
- there is a DB schema change that will cause some problems migrating the existing data.
- Since we are using Spring Boot, we will disable the batch automatic execution.
- Our jobs are all defined in xml files. Is job migration necessary?
What to do about Spring Batch Admin? Because of our app structure I dont think we want to go the direction of Spring Cloud Flow. I saw there is a 2.0M version of Spring Batch Admin github which is based on new technologies.
I am looking for recommendations on approach and possible pitfalls moving forward.
Thanks