우리는 종종 가지고 싶은 물건을 장바구니에 담아두거나 찜목록에 눈팅만하다가
긴급할인, 초저가할인, 블랙프라이데이 등 초저가 프로모션에 한정된 수량에 구매하게된다
하아 이거 없이 살다보니 그냥 사지 말아야되나!!
전시 공연이나 아이돌 티켓공연도 마찬가지로 손여사님께 임영웅 콘서트 티켓 하나 구매해드리고 나도 아이유 콘서트 가고 싶은데
예전에는 와우나 디아블로 대규모 RPG에서 늘보던 게임대기열 나이가 먹다보니 이제는 마눌님이
쓰레기좀 버리고와!!
설겆이좀 해
분리수거 안할꺼야!!
빨래정리좀
바로 게임정지하고 달려갈수 있는 콘솔만 하다보니…
함께 하는건 어떤 재미였나요?!
그시절 와우 대기열 이거 해보겠다고 기다리면
4대 명검를 보게되었는데 이제 이런 시간 즐기는 여유가 없다!!
여튼!! 이럴때 보게되는것이 바로 대기열이다.
이거 어떻게 만들어지는지 뭐 딱히 궁금하지도 않았는데 만들어야된다!! 월급받아야지!!!
대기열
대기열을 VWR이라고 좀 있어보이게 예기한다 버츄얼 웨이팅 룸, 가상대기열
뭐라고 부르던 뭐 이제는 다이해하셨을거라 생각하고
그래서 어떻게 만들어야되나요?
나도 정확히는 모르겠지만 의식에 흐름대로 기능을 고민해보고 프로세스를 만들고 필요한 서버 구성을 생각해본뒤에 가장 적합한 기술스택을 가볍게 만들어보려고 한다.
의식에 흐름으로 작성하는 필요한 기능
- Client 요청을 받는 Api
- 요청을 받고 처리되는 조건문처리(대기열 or 입장)
- 대기열 Queue FIFO
- Queue 생성 프로듀서
- Queue 소비 컨슈머
- Queue에 들어가야되는 객체오브젝트(식별가능하고 유니크한 그무엇?! Jwt 토큰!!)
- 대기열에서 튕겨나갔을때 소멸되는 기능
- 음 브라우저에서 튕기면 어떻게 서버가 감지할까 생각해보니 주기적인 체크로직
- 동일 식별자가 요청오면 처리해야되는 방어코딩
- 대기열이 필요하지 않다면 스위치처럼 상태를 바꾸는기능
- 서버상태를 체크할수 있는 모니터링
- HTTP 또는 Soket
대기열 구현 레퍼런스 찾아보기
https://aws.amazon.com/ko/blogs/tech/getting-started-virtual-waiting-room-on-aws/
https://tech.wonderwall.kr/articles/vwr/
https://duddal.tistory.com/m/62
https://velog.io/@yeezze/다수의-유저들을-선착순으로-줄세워보자
직접 구현 또는 AWS이용
우선 VWR에 대해서 이해 해보고자 알아보고 어떻게 구현해야되는지 정리했는데
정작 어디서 사용되는지 어떻게 사용되는지 요구사항을 듣지못해서
어느정도의 트래픽 들어오는지 어떻게 플로우가 되는지는 들어보고 AWS 사용여부와 오픈라이브러리를 이용한 구현으로 가능한지 판단이 필요하여
일단 여기까지!!
삽질 후기 또 정리 하도록 하겠습니다
'Backend 개발자 > Springboot' 카테고리의 다른 글
Spring Cloud gateway 메뉴얼 공식문서 빠르게 요약 알아보기 (0) | 2024.07.04 |
---|---|
Spring Cloud Gateway 언제쓰는거지?! (1) | 2024.06.03 |
Springboot 3.x.x 프레임워크 Java17 Intellij 설정하기 (0) | 2023.06.07 |
로컬PC 쿠버네티스 minikube 에서 springboot 프로젝트 실행 삽질하기 챕터5 (0) | 2023.04.14 |
쿠버네티스 환경 맛보기 미니멀라이즘 minikube 설치 및 설정 springboot 프로젝트 실행하기 챕터4 (0) | 2023.04.13 |