connect-redis
connect-redis
는 Express
에서 redis
를 session storage
로 제공하는 라이브러리 입니다.
프로덕션 배포시 메모리를 세션 스토리지로 사용하지 않고 Scalability
와 안정성을 위해 사용됩니다.
최근에 새로 시작하는 프로젝트에서 redis session
을 설정하는데 문제가 있어 찾아보던 중 최근 2023년 3월 1일에 connect-redis
의 버전 업데이트이 있어 기존과 달라진 부분을 공유하고자 합니다.
Breaking changes
제일 큰 변경사항은 아래의 1번과 2번입니다.
- 더이상 redis client의 lagacy 모드를 지원하지 않습니다.
- 타입스크립트 코드 기반으로 재작성되어 더이상 기존
@types/connect-redis
를 사용하지 않습니다. - 빌드는 이제 CJS와 ESM을 모두 지원합니다. 노드 14에 대한 지원이 제거되었습니다.
버전 6.x에서의 마이그레이션
redis 패키지에 대해 regacyMode: true 설정을 사용한 경우 이 패키지를 실행하는 데 레거시 모드가 더 이상 필요하지 않으며 더 이상 지원되지 않으므로 이 설정을 제거해주세요.
@types/connect-redis
타입정의를 사용중이라면 제거해주세요.
@types/connect-redis
의 버전이 아직 업데이트 되지 않아 타입 오류가 발생합니다.connect-redis
패키지에 타입을 포함하고 있으니 제거해주세요.
RedisStore 초기화는 더 이상 express-session을 사용하지 않습니다.
별도의 RedisStore 초기화 과정없이 바로 import된 RedisStore를 사용하면 됩니다.
1 | // 기존 |
CommonJS(require) 모듈을 사용하는 경우. 기본 export를 가져와야 합니다.
1 | // 기존 |
아래에 예시코드를 작성하여 두었으니 참고해주세요.
예시
1 | import { NestFactory } from "@nestjs/core"; |