문제
•
플랫폼의 랭킹 정보를 Redis 캐시에 저장하는 전략 중 Look-aside설정 후 부하 테스트를 진행했습니다.
•
TTL(Time To Live)을 15초로 짧게 설정하여 테스트 한 결과, TTL이 끝나고 Redis 캐시에 데이터가 없을 때 응답 시간이 많이 늘어났습니다.
•
Look-aside 전략 설정으로, TTL이 만료될 때마다 DB에서 데이터를 재조회하고, 캐시를 갱신하는 과정에서 응답 속도가 느려지게 됩니다.
await this.redisService.setCache(cacheKey, JSON.stringify(platforms), {
ttl: 15,} as any);
JavaScript
복사
해결 방법
•
Scheduler를 통해 1시간마다 Redis 캐시에 데이터를 저장했습니다.
•
TTL을 2시간으로 설정하여 Redis 캐시에 데이터가 비어있는 시간을 없앴고, 일정한 처리 속도를 유지할 수 있었습니다.