Node.js 서버에서 사용하는 Redis 모듈의 사용 방법을 확인했습니다. 기존에는 SET, GET, ZADD와 같이 모듈에서 지정된 Command만 사용되는 줄 알았는데 Redis의 공식 Document에서는 별도의 방법이 지정되어 있지 않았고, 모든 명령을 사용할 수 있다고 소개되어 있었습니다. 그래서 ZRANGEBYSCORE과 같이 -inf, +inf, 와 여러 개의 인자가 들어가는 함수를 사용해보았고, 정상적으로 조회되는 것과 MULTI EXEC Transaction을 이용해 여러 개의 명령을 한 번에 정의할 수 있는 기능도 사용할 수 있었습니다. Reids-cli 대다수의 기능을 사용할 수 있는 것을 확인하였고, 한정된 명령어를 사용할 수 있었던 이전과는 다르게 논리 구조를 탄탄하게 구현할 수 있게 된 것 같습니다.
Redis의 Geometry Member에 만료 시간을 설정하는 논리 구조를 작성하였습니다. Redis에서는 key 단위마다 Expire를 사용해 만료 시간을 설정할 수 있습니다. 하지만 Geometry 데이터 형식은 key 내부에 member가 추가되는 형식으로 구현되어 있고, Expire를 사용하여도 하나의 사용자 위치를 삭제시킬 수 있는 것이 아니라 모든 위치를 삭제하는 방법으로밖에 구현할 수 없습니다. 그렇다면 Node.js 서버에서 GEOADD를 이용해 사용자의 위치를 추가할 때 별도의 key에 작성된 시간을 추가해 일정 시간마다 삭제하면 되지 않을까 생각하였고, Redis의 MULTI EXEC Transaction을 이용해 사용자의 위치와 작성된 시간을 서버에서 동시에 변경할 수 있도록 구조를 작성하였습니다.
React.js에서 Naver Cloud SENS를 이용해 핸드폰 인증 API를 연동하였습니다. 기존에는 이메일 인증 메일 > 이메일 인증 > 회원 가입 순으로 구현되어 있었지만, 핸드폰 인증 문자 발송 > 핸드폰 인증 > 회원 가입 순으로 변경하였습니다. React.js에서 변경된 API의 URL과 내부 인자를 수정하였고, 기능이 정상 동작하는 것을 확인하였습니다.