issues
search
tonykang22
/
hello-world-auto-store
3
stars
1
forks
source link
[order-manager] Zinc 구매 재개 API
#160
Closed
tonykang22
closed
1 year ago
tonykang22
commented
1 year ago
Zinc 구매 재개 API
개요
Zinc API 특성 상, amazon 계정 block 등의 오류가 발생할 여지가 다분하다.
빠르게 재시도를 할 수 있도록 따로 API 제공
Cron job vs API
실패한 주문의 재시도 cron 주기는 5분이다.
만약 API 호출 시간이 동일하게 5분 0초 라면, 둘 중 하나의 작업만 성공하고 나머지 하나의 작업은 실패하게 된다. (뒤의 로직에 의해 중복 처리는 되지 않음)
문제가 되지 않는다해도 동시에 접근하는 상황 자체가 바람직하지 않으므로 일종의 Lock 기능을 부여하기로 한다.
구현 방향
Order-Context 내에 ConcurrentHashMap을 두고 작업이 수행 중인 주문의 주문 번호(
key
)와 주문 상태(
value
)를 담는다.
추후 Service 단에서 각 주문의 작업을 수행하기 전에 해당 map에서 작업 중인 주문 건인지 확인 후, 주문 건이라면 로그만 남기고 무시하도록 한다.
Zinc 구매 재개 API
개요
Cron job vs API
구현 방향
key
)와 주문 상태(value
)를 담는다.