springboot(2)
-
알림톡과 예약 시스템의 트랜잭션 분리 - 아웃박스 패턴 도입기
문제 상황시작은 이랬습니다.“앤디(영어이름), 서버에 알림톡 에러 났다는 버그가 있던데요?”“앤디, 항공권이 예약이 제대로 안 됐다는데 확인좀 부탁드려요.”이런 문의가 들어왔을 때 가장 먼저 확인하는 것이 예약 상태입니다.일반적으로는 예약 실패시 즉시 사용자에게 피드백이 가야하는데, 해당 건은 예약도 실패했고 알림도 실패한 상황이었죠.로그를 확인해보니 ApiPlex(카카오 알림톡 대행사)와의 통신 오류로 인해 알림톡 발송에 실패했고, 이 실패가 예약 트랜잭션을 롤백시킨 것이었습니다.더 큰 문제는 사용자는 예약을 시도했다가 실패했다는 것조차 알 수 없었다는 점입니다.이는 출장 예약 시스템에서는 심각한 문제였습니다.항공권이나 호텔의 경우 실시간 재고(좌석, 객실)가 중요한데, 알림톡 장애로 인해 예약이 실패..
2025.01.29 -
비즈니스 확장성을 고려한 알림톡 발송 시스템 개선기: 전략 패턴의 실전 적용
알림톡이란?알림톡은 카카오톡이 제공하는 기업용 메시징 서비스입니다.일반적인 카카오톡 메시지와는 달리, 알림톡은 사용자가 해당 카카오톡 채널을 친구로 추가하지 않아도 정보성 메시지를 발송할 수 있다는 특징이 있습니다.기업들은 주로 주문 내역, 예약 확인, 배송 현황 등 사용자에게 꼭 필요한 정보를 전달하는 용도로 사용됩니다.알림톡의 장점은 다음과 같습니다:친구 추가가 없어도 발송 가능최대 1,000자까지 텍스트 전송 가능버튼을 통한 액션 유도 (최대 5개)높은 도달률과 신뢰도스팸이나 피싱의 위험이 낮음출장관리시스템에서의 알림톡 활용저희 회사가 만드는 출장관리시스템(이하 BTMS)에서는 다음과 같은 상황에서 알림톡을 활용하고 있습니다:항공권 예약 알림미확정(예약 실패)예약 완료 알림에약 취소발권 완료체크인 ..
2025.01.26