백엔드
오픈마켓 여행 플랫폼의 실전 API 연동 노하우
두줄요약
여행 플랫폼의 API 연동에서 내결함성과 상태 일관성을 확보하는 방법을 정리했습니다. 상품 상세와 실시간 예약에서 타임아웃, fallback, 상태머신, 재시도, 보상 트랜잭션을 다뤘습니다.
핵심 내용
- 오픈마켓 여행 플랫폼에서 여행 상품 상세 페이지와 실시간 예약 API 연동 시 고려할 점 정리
- 여러 내부·외부 시스템이 얽힌 구조에서 내결함성, 최종 일관성, 멱등성 확보가 핵심 과제
구조와 흐름
- 상품 상세 페이지는 다수 API 조합으로 구성되어 타임아웃을 중요도와 응답시간에 맞춰 세분화
- 오류가 난 API는 fallback과 circuit breaker로 영향 범위를 줄이는 방식 적용
- 실시간 예약은 상태머신으로 상태를 정의·매핑하고, 대사배치로 상태 불일치를 재동기화
주의할 점
- 재시도 시 중복 요청 가능성을 고려해 명시적 에러코드, 상태 조회 API, backoff 전략을 함께 검토
- 보상 트랜잭션이 필요한 경우, 되돌리기 쉬운 외부 시스템을 먼저 연동하고 금전성 요청은 뒤로 배치
- 완전한 복구가 어려운 구간은 장애 대응보다 설계 순서를 더 신중히 잡아야 함