기술적 의사 결정

매칭

매칭 대기 시간동안 유저를 모아 둘 공간이 필요했고,

매칭 대기와 매칭완료 등 다음 기능이 수행될때까지 많은 행위들이 빠르게 이루어 져야 한다.

대기장소의 생성에 제약조건이 있고 대기시간은 지정되있지 않아야 한다.

유저가 그 공간에 들어 올 동안(요청이 수행될때)

다른 유저의 요청에 간섭을 받지 않아야 한다. (자원의 무결성 보장)

대기하는 공간은 메모리가 아닌 외부의 공간이 필요하다.(서버의 부담을 줄이고 , 서버 장애상황에 대비)

대기하는 동안의 유저의 매칭 취소 및 네트워크 연결 문제 등 기타 유저의 상황을 체크를 해야 한다.

위에 해결책으로

Redis

WebSocket