“스케줄이 또 안 돌았어요” — 우리가 Temporal을 선택한 이유
7
AI 요약
이 글은 AI가 원문을 분석하여 핵심 내용을 요약한 것입니다.
이 게시물은 Jenkins 기반 crontab의 한계를 경험하고 안정적 스케줄링을 위해 Temporal을 도입한 사례입니다.
문제
- 스케줄 실패 시 Jenkins와 모니터링 job이 함께 멈추어 탐지 불가
- 콘솔·애플리케이션·DB 로그를 뒤져야 하는 원인 추적의 비효율성
- 일일이 수동 재실행해야 하는 운영 부담
대안 검토와 선택
- Spring Batch+Quartz는 익숙하지만 비즈니스 흐름 가시성 부족
- Temporal은 자동 재시도·중단 시 복구·워크플로우 이력 가시성 제공하여 채택
설계·운영 포인트
- Workflow는 비즈니스 정책 분기, Activity는 멱등성 보장 작업으로 경계 설정
- 개인정보 보호 위해 Payload ID만 Temporal에 전달하고 DB에서 조회 처리
- 도입 효과: 자동 재시도와 Timeline 기반 이력 가시성으로 장애 대응 시간 단축
