- 기술적으로 겪었던 시행착오 또는 특히 고민 많이 한 부분을 소개.
- 포장 할 필요 없이, 우리가 어떤 순서로/논리로 고민해 왔는지를 솔직하게 이야기할 것.
- 실시간 위치 기반 서비스를 사용하다보니
- 많은 인원이 (100명 이상) 지정한 범위 내에 들어 왔을 때 서로 노래를 보내주고 받으며 서버에 부하를 줄 수 있으므로 보내는 시간과 받는 시간의 제한을 걸어서 부하를 줄이도록 함.
- 두 명 이상의 ‘musicovery’ 사용자가 계속 범위 내에 들어와 있으면 서로 노래를 계속 주고 받게 되는 것을 방지 차 동일한 사람에게는 더 이상 추천을 받지 않도록 한국 표준시 기준으로 00시에 초기화 되게 설정.
실시간 위치 기반 서비스를 사용하다보니, 많은 인원이 지정한 범위내에 들어왔을 때 이를 처리하기 위한 우선순위 또는 예외처리가 필요하였습니다.
그렇기에 데이터를 송/수신하는 서버의 부하를 줄이고자 저희는 각 사용자에게 토큰을 부여하여, 처리율 제한을 구현하였습니다.
마찬가지로 한 공간내에서 같은 유저에게 지속적인 요청이 전달되는 것은 사용자 경험 상 좋지 못하다고 판단하여 하루에 한번으로 제한을 두어 기술적인 어려움을 해결할 수 있었습니다.