전체 글 32

2024/07/22 오늘의 개발

About마피아 투게더의 vote room 패키지 간 의존성 분리vote repository 레디스 도입Redis test 환경 구축1. 마피아 투게더의 vote room 패키지 간 의존성 분리정리room 패키지에 있는 vote관련 모든 로직을 vote 패키지로 이동시킨다마주한 문제 및 해결 방안전원 참가시 room의 status를 변경해야 함 -> event 발행room 상태가 voteResult -> nightIntro로 변경시 해당 방의 모든 vote를 제거해야함 -> domain 이벤트 발행2. vote repository 레디스 도입정리vote repository를 레디스 저장소로 변경한다마주한 문제 및 해결 방안개발링크3. Redis test 환경 구축정리testcontainers를 통해서 테..

일기 2024.07.22

Redis란

서론마피아 투게더라는 프로젝트를 진행하면서 기존 JVM 메모리로 관리하고 있던 게임내의 데이터 Repository를 Redis로 바꾸게 되면서 이에 대한 학습을 진행하였다.기존 JVM 인메모리로 관리하던 것이 문제가 된다고 생각한 것은모놀로식 서버에서 모든 데이터를 관리하는 것이 단일 장애점(SPOF)을 유발MSA 아키택처로 변경하거나 혹은 스케일 아웃 진행시 데이터 관리에 문제가 발생이라고 판단하였다.그렇다면 DB로 어떤 스택을 사용해야 하는 것일까?우리는 영속성 DB와 인메모리 기반의 DB를 고민하게 되었다.이중에서 영속성 DB를 채택하지 않은 이유는 우리의 서비스는 인증 인가의 과정이 없는 서비스 이기 때문에 이전 유저의 기록을 영구 저장할 필요가 없다고 판단했기 때문이다. 때문에 에초에 영속성 계..

학습 2024.07.22