지금 node랑 socket io로 온라인 웹게임 프로젝트 진행하는데
플레이어가 동작할때마다 실시간으로 정보 저장하고 바꾸고 또 다른클라한테 던져주고해야해서
속도가 존나 중요하거든
처음 프로젝트 시작했을때 redis로 저장했는데
저장해야할것들이 많아서 redis로는 한계가 있더라
게임에 방이 필요한데 방마다 필요한 정보가 있고
redis에 저장하자니 redis hash에는 문자열밖에 저장이 안돼서
room{
player:{...}
something:{...}
}
이런식으로 저장을 못하니까
어쩔수없이 새로운 key 생성해서
방하나마다
방제목_players
방제목_score
방제목_....
.
.
.
이런식으로 키가 5~6개 씩 생기니까 답없는거 같아서
몽고db로 갈아엎으려고하는데 몽고db 속도가 게임진행하는데 지장없을 만큼 빠르냐?
agar io 처럼 완전히 플레이어 위치를 실시간 움직이는건 아니고
각 플레이어마다 턴 넘기는것 정도임
반응속도가 중요하면 db 안 쓰면 안됨?
턴제겜이면 별로 db성능 필요 없을거같은데 글고 redis나 인메모리 스토리지 mongodb나 성능 비슷할걸. 글고 지금 구성에서는 왜 Db를 써야되는지 모르겠음 별로 쓸 이유가 없는거같은데
인메모리에서 해쉬테이블 쓰지 왜