에이전트 재시도 때 중복 결제·메일을 막는 작은 도구
나 자동 작업이 중간에 멈춘 뒤 다시 실행되면 같은 일을 두 번 할 수 있다. 예를 들어 고객에게 두 번 결제하거나, 같은 이메일을 두 번 보내거나, 기록이 꼬일 수 있다.
는 같은 제공자 안에서는 중복 처리를 줄여주지만, 호출이 시간 초과됐을 때 실제로 처리됐는지 모르는 상황까지 해결하지 못한다. Stripe 결제, 이메일 발송, 쓰기처럼 여러 시스템이 함께 들어간 에서도 한계가 있다.
이를 줄이기 위해 가 만들어졌고, 위험한 호출을 감싸서 의도됨, 실행 중, 완료됨, 확인됨 같은 단계로 상태를 추적한다. 시간이 초과되면 바로 다시 시도하지 않고 실제 제공자 쪽 상태를 확인해 이미 처리됐는지 판단한다.
핵심 포인트
- 에이전트나 작업이 중간에 멈춘 뒤 하면 같은 행동이 두 번 일어날 수 있다.
- 는 한 제공자 안에서는 도움이 되지만 여러 시스템을 잇는 에는 부족할 수 있다.
- 시간 초과가 나면 성공인지 실패인지 알 수 없어 무작정 하기 어렵다.
- 제안된 는 위험한 호출의 상태를 단계별로 기록한다.
- 시간 초과 뒤에는 실제 제공자 상태를 확인한 다음 여부를 정한다.