멱등성 없는 재시도 중복 문제 + 조용한 실패 방지 구조 경험으로 설명
졸업 프로젝트에서 데이터 수집 파이프라인을 자동화했을 때 처음으로 자동화 실패를 경험했습니다. 외부 API 응답이 가끔 지연되면서 파이프라인이 중간에 멈추는 케이스가 생겼고, 타임아웃과 재시도 로직을 추가했습니다. 멱등성이 없는 작업에 재시도를 붙였다가 중복 데이터가 쌓이는 문제가 생겼고, 이후에는 작업 단위마다 job_id를 붙여 중복 처리를 막는 구조를 만들었습니다. 모니터링은 자동화 작업이 완료됐는지 슬랙 알림으로 결과를 수신하는 방식을 추가해 조용히 실패하는 상황을 방지했습니다. 롤백은 파이프라인 상태를 DB에 기록해 마지막 성공 지점부터 재실행할 수 있게 했습니다.
자동화가 실패할 때 사람이 알아야 하는 자리를 명확히 설계하는 게 자동화 자체보다 중요하다는 걸 배웠습니다.