Redis 사용해 사용자 실시간 상태를 구현해보기

  1. 기존의 Redis를 사용한 실시간 사용자 상태 기능을 만들었으나 폴링 방식이라 불필요한 서버 부하와 자원 낭비 가 심했습니다.
  1. 그리고 진정한 실시간은 아니였습니다. 폴링주기가 30초라 그만큼 딜레이가 생기고 그렇다고 1초로 줄이게되면 서버에 엄청난 부담이 생기게됩니다. 아래는 원래코드 ..

image.png

image.png

왜 Redis를 선택했을까?

처음에는 MySQL로 사용자 상태를 저장하려고 했는데, 문제가 좀 있었습니다.

그래서 인메모리 데이터베이스인 Redis를 사용하기로 결정 (램에 저장하기때매 읽기쓰기가 빠름)

전체 구조

  1. 사용된 기술
  1. Redis 키 설계

image.png

Redis에서 사용자 상태를 관리하기 위해 3가지 키 설계했습니다.