[DevCamp - 2주 3일차] - 포인트 API 구현

sooyoung choi·2024년 3월 27일
0

쿠폰 API 개발 전 포인트 API 구현하려고 했으나, 앞에 회원부분에 미련이 남았고, 레디스를 도입하여 리프레시 토큰을 관리하는 방식으로 채택해 토큰 블랙리스트를 구현해보자가 목표로 바뀌었다.
시간이 정해져있는 프로젝트이지만 온전히 집중할 수 없는 상황이므로(이력서, 포폴, 면접 등 준비할게 태산..게다가 nest.js, typescript등 지식의 부재) 미션과 상관없이 혼자서 계속 구상하며 디벨롭 해야겠다는 생각뿐이다.

오늘 구현한 부분

  • 로그인 기본 기능 구현
  • 쿠폰, 포인트 관련 엔티티 추가
  • 각각 사용자와 관계설정

보완해야할 부분

  • 레디스에 리프레시 토큰 넣기
  • 로그아웃

redis를 연결해주면서 ioredis를 알게되었다.

  • Node.js 환경에서 Redis를 사용하기 위한 강력하고 성능이 뛰어난 Redis 클라이언트 라이브러리라고
    구체적으로 빠른 성능을 제공하며 높은 I/O 처리량을 필요로 하는 애플리케이션에 적합하며 레디스 서버 장애시 자동으로 재연결을 시도하고 비동기 작업을 더욱 편리하게 처리할 수 있게끔 프로미스를 지원
  • nest.js에서 레디스를 사용하려고 검색해봤을때 cache-manager를 쓰는 방법도 있었-다.
  • ioredis는 Redis와의 직접적인 통신과 관련된 작업에 더 특화되어 있으며, cache-manager는 다양한 캐시 백엔드를 지원하는 보다 범용적인 캐싱 솔루션-
  • 지금 현 프로젝트에서는 캐싱의 필요성을 못느꼈으므로 ioredis 방식 채택

포인트, 쿠폰관련 정책

  • CTO님 발제 내용중에 회사의 입장에서의 정책 내용을 들었을때 처음 알게된 내용정리

전체 시스템 고려(백)

  • 쿠폰의 발행량을 제한 둘것인가
  • 매출에 따라서 쿠폰의 발행양을 자동 조정 하도록 할건가
  • 가이드 라인이 노출되도록 할건가
  • api를 열어두고 벌크 발행이 가능하게 할것인가
  • 알림톡을 할것인가
  • 사용한 기록을 어떻게 남길것인가
  • 발급을 해놓고 만료된 쿠폰은 어떻게 처리할것인가
  • 포인트는 고객과 회사의 자산

단순히 고객의 입장에서 구상했을때와 달리 개발자의 입장으로 바라본 정책을 생각해보는 방법도 알아봐야겠다.

0개의 댓글