I have an application which utilizes Spring Batch to read and process records from a common database. The job is triggered at a fixed time from a scheduler and works fine on a single app instance. I would like to horizontally scale this application to improve processing time whilst using the same database. Is there anything within Spring Batch (a semaphore) to manage the data being accessed by multiple instances, so as to prevent them accessing and modifying the same records?
I've done a search and have only managed to find multi-threading within the same app instance.
Many Thanks