NAVER D2
d2.naver.com
순간적으로 트래픽이 급증하는 서비스를 운영하다 보면 단순히 서버를 늘리는 것만으로 해결이 안되는 경우가 있습니다. 또한 동시성 해결을 위해서 다양한 락(Lock)을 적용하여 처리한다고 해도 서비스를 온전히 사용하는 사용자가 있는 반면, 비즈니스 로직이나 상황에 따라서는 일부 사용자들은 정상적으로 사용이 어려운 경우가 생기기 마련인데요. 인기 있는 음식점을 가면 한정된 공간 안에 손님들을 모시기 위해 대부분 마련한 번호표 시스템처럼 서비스에도 "대기열 시스템" 을 적용해 보는 것도 검토의 대상이라 생각을 해봅니다.
네이버페이 주문에 적용된 확장 대기열 개발기라는 주제로 확장성에 초점을 두고 시스템 설계 측면에서 설명하는 글이 있어 공유합니다.
특히, 일반적인 폴링 형태로 사용자가 대기열을 통과 가능한지 체크하는 방식이 아닌 사용자와 대기열 사이에 중계 서버를 둬서 순번에 맞는 사용자만 통과시키는 방식이라든지 대기표 관리를 범위로써 관리하여 데이터베이스 관점에서 좀 더 유연한 구조를 가져간 점이 특징이라 볼 수 있는 것 같습니다.
https://d2.naver.com/helloworld/6480558
다음 내용이 궁금하다면?
이미 회원이신가요?
2024년 10월 25일 오전 12:39