본 문서는 실무 배치 개발을 위한 성능 튜닝 및 테스트 기법에 대해 정리한 기록입니다.
Page Size를 크게 잡으면 네트워크 I/O 횟수를 줄일 수 있습니다. 통상적으로 Chunk Size와 Page Size를 동일하게 맞추는 것이 성능 최적화의 기본입니다.JpaItemWriter는 기본적으로 Chunk 처리가 끝날 때마다 flush와 clear를 호출하여 메모리 누수를 방지합니다.JdbcBatchItemWriter를 사용해 일괄 Insert(Batch Update)를 실행하면 DB와의 네트워크 통신 비용이 비약적으로 줄어듭니다.운영 환경에 배포하기 전에 배치가 정상적으로 작동하는지 검증하기 위한 완벽한 테스트 환경 구축이 필수적입니다.
JobLauncherTestUtils, JobRepositoryTestUtils) 빈을 쉽게 주입받을 수 있습니다.launchJob())하거나 특정 Step만 독립적으로 실행(launchStep())하여 테스트 격리성을 유지할 수 있습니다.