안녕하세요. 오늘은 팝 클라우드에서 사용되는 스케줄러 작업의 중복을 막고 실패시 재처리 하도록 만드는 과정에 대해서 작성하도록 하겠습니다.
팝 클라우드에서는 IP 캐싱 초기화와, 인기 팝업스토어 산정 초기화 작업에 대해서 매일 새벽에 작업을 시행하고 있습니다. batch 서버는 SPOF 지점이라 MVP 배포시 스케일아웃할 예정입니다. 만약 다중 환경에서 매일 새벽 2시에 돌아가는 스케줄이 있다면 중복 작업 처리가 될 여지가 있습니다.
먼저 이를 막는게 첫 단계입니다. 두 번째는 스케줄링 작업이 실패하면 어떻게 될까요?
매일 새벽 2시에 작업이 수행되지만, 사용자 입장에서는 만료된 팝업 스토어 정보가 보일 수 있습니다. 따라서 스케줄링 처리시 재처리를 할 수 있도록 별도의 장치를 설정해주었습니다.
Spring-batch로 처리하지 않고 최대한 기본 작업에서 처리하고자 아직 Batch는 적용하지 않았다는 점 이해 부탁드립니다! 오늘 소스코드가 담긴 작업 PR 범위는 다음과 같습니다. h...