the large scale batch of - existing batch system is composed of 30+ different jobs, and each batch influence several tables which influence 10+ subsystems - how we realized complexing development style with 7+ members. - how we replaced the existing on-premise batch with AWS system.
need a powerful tool to monitorize each batch’s behavior and performance. - As each batch runs and sometimes fails, we need the quickest way to re-run if any batch fails. Also, we should notice errors quickly. Infrastructure batch1 batch2 batchN ・・・
run in each job, and this sometimes causes more than 1 time run - To prevent this, use the unique ID of which each workflow issues in each time. Start End Run Error ID Verification
DI(Dependency Injection)patterns with Tsrynge. - While each repository(DB-connection)parts are separated, each repository function is used in each developer’s batch use case. - We started writing unit-tests from the first.
- Logging information is well written enough with parameters. - Unit Tests are written enough (which was made easy with DI pattern). - Summarization of every table and pages on which batch has influence. - Each member knows how to re-run the batch with documentation.