caching은 다들 너무나도 잘 알고 계실 것입니다. 연산된 결과를 저장해두고 이후에 다시 연산을 하는 대신에 저장된 결과 값을 반환해주는 기법이죠.
nest에서는 요청에 대한 응답 결과를 in-memory에 caching할 수 있습니다. 공식문서에서 추천하는 패키지로 cache-manager
를 사용합니다.
@Module({
imports: [
CacheModule.register({}),
],
controllers: [AppController],
providers: [AppService],
})
export class AppModule {}
cache의 expiration time이나, 저장할 record의 갯수를 설정하는 옵션도 있습니다.
뿐만 아니라, cache store를 redis로 활용하는 플러그인도 설치해서 쓰면 굉장히 편리하게 설정할 수 있습니다.
자세한 내용은 공식문서를 참고하세요.