비관적락

    [눈치 코치 캐치!] DB 동시성 제어 문제 해결

    시작하기 전에 [눈치 코치 캐치!]의 MVP를 완성하고 런칭의 기쁨도 잠시, 다양한 피드백을 마주하게 되었다. 그중 내가 맡아 개선한 부분은 ‘게임 진행 중 시간제한(타이머)’ 기능을 추가한 것이었다. 게임에 참여하고 있는 모든 유저가 키워드나 그림을 제출해야만 다음 라운드로 넘어갈 수 있기 때문에 시간제한을 두지 않으면 게임이 지루해진다는 의견이 있었고, 전적으로 동의했다. 빠르게 기능을 개발하면서 한 가지 문제 상황을 맞닥뜨렸다. 지금부터 이 문제를 해결하기 위해 어떤 시도를 했고, 어떤 방식으로 해결했는지 적어보려 한다. 차근차근 문제부터 뜯어보자! 문제 상황 제한 시간을 넘어 미처 제출하지 못한 유저의 키워드나 이미지가 일괄 자동 제출 되었을 때 DB에 제대로 데이터가 쌓이지 않아 다음 라운드로 ..