2026-01-29
오늘의 학습: 메시지 큐와 비동기 통신 설계
핵심 요약
메시지 큐(Message Queue)를 활용한 비동기 통신은 시스템의 확장성과 사용자 경험(UX)을 개선하는 핵심 기술입니다. 요청과 처리를 분리하여 시스템 유연성을 높이고, 대규모 트래픽을 안정적으로 관리할 수 있습니다.
주요 포인트
- 동기 vs 비동기: 식당의 직접 주문(동기)과 주문함 활용(비동기) 비유를 통해 호출자의 제어권 유지 여부를 이해함.
- 메시지 경량화: HTTP 오버헤드를 줄이기 위해 메시지 페이로드를 컴팩트하게 유지하는 것이 성능에 직결됨.
- 실전 사례: 무인 주차장 게이트 시스템 설계 시, 할인 정책 확인을 비동기로 처리함으로써 차량 정체를 방지하는 설계 패턴을 학습함.
- 도구 비교: 도입이 쉬운 RabbitMQ와 대용량 스트리밍에 최적화된 Kafka의 특성을 파악함.
- 데이터 무결성: DB 트랜잭션 롤백 시 메시지 처리의 정합성을 맞추기 위해 Transaction ID 활용 등의 방어 로직이 필요함을 인지함.
결론 및 향후 계획
메시지 큐는 단순한 기능 구현을 넘어 아키텍처 수준의 고민이 필요한 영역입니다. 다음 프로젝트에서 알림 서비스나 대용량 데이터 로깅 시 RabbitMQ를 직접 도입하여 비동기 시스템의 실제 구현 체감을 높일 계획입니다.