Redis Vs Mongo DB By Item View Count (이 상품 몇명이 보고 있어요)
본 글은 Gmarket Mobile Web Vip 팀의 백엔드 엔지니어가 상품 상세 페이지에 '현재 이 상품 몇 명이 보고 있어요' 기능을 구현하며 겪은 설계 과정을 공유합니다. 실시간으로 상품별 중복되지 않은 사용자 수를 집계해야 하는 요구사항을 만족시키기 위해 RDB 대신 NoSQL 데이터베이스를 선택했으며, Redis와 MongoDB의 장단점을 비교 분석합니다. 최종적으로 Redis를 선택하여 최적의 성능을 내는 설계를 목표로 합니다. 이 기능은 사용자가 상품 상세 페이지에 접속하면 사용자 정보를 저장하고, 이탈 시 제거하는 방식으로 동작하며, 웹소켓 대신 API 요청을 통해 데이터를 주고받는 방식을 채택했습니다.