
4
AI 요약
이 글은 AI가 원문을 분석하여 핵심 내용을 요약한 것입니다.
스프링 배치 무중단 배포 적용 과정
11번가는 팀 전용 배치 서버를 운영하며 Jenkins를 활용하여 Spring Batch Job을 주기적으로 실행합니다. 그러나 배포 중 jar 파일이 변경되면 java.lang.NoClassDefFoundError 및 java.lang.ClassNotFoundException과 같은 에러가 발생하여 Job이 비정상적으로 실패하는 문제가 발견되었습니다. 이를 해결하기 위해 무중단 배포 방식을 도입하고자 하였습니다.
문제 상황
Job 실행 중 배포가 이루어질 경우, jar 파일이 업데이트되면서 발생하는 에러 로그가 남습니다.
기존 배포 방식
기존 방식은 Job 수행 중 배포가 진행되는 상황에서 문제가 발생했습니다. 이를 통해 스프링 배치의 성능을 개선하고자 했습니다.
- Symbolic link 적용
- 배포 이후 단계
- Job 실행 단계
이러한 과정을 통해 무중단 배포를 성공적으로 적용할 수 있었습니다.