1. 반드시 TTL (Time-To-Live)을 설정하라
- Redis에 데이터를 저장할 때 TTL을 설정하여 메모리 자원 낭비를 방지해야한다
- 데이터의 최신성 보장
- 캐시 데이터의 정합성 유지
- 장애 상황에서의 자동 정리
2. 하나의 키에 사이즈가 큰 데이터를 저장하지 마라 (Big Key Problem)
- 일반적으로 크기가 1MB를 초과하는 문자열 유형 값이나 10,000개가 넘는 요소를 포함하는 컬렉션 유형 키를 큰 사이즈로 간주
- 메모리 소비 및 단편과 발생
- 성능 저하 / 과도한 리소스 유발 / 동기화 지연 / 데이터 불균형
3. Redis의 다양한 Date Type을 활용하라
- Redis는 캐싱과 세션 관리 외에 다양한 곳에 활용할 수 있다
- 정렬이 필요하면 Sorted Set
- 객체를 그대로 저장하기 보다는 Hash를 사용하라
4. Hot Key 만료 시 주의하라
- 많은 사람들이 Redis를 메인 DB가 아닌 원천 DB의 캐싱을 위해 많이 사용
- 캐싱하려고 저장한 데이터의 TTL이 만료되면 일반적으로 원천 DB를 조회함
- 요청이 집중되는 캐시 키를 흔히 핫키(Hot Key)라고 함
- 핫키의 TTL이 만료되면 Redis로 관리하던 수많은 요청이 원천 DB로 몰리게되고 부하가 발생
- 이 현상을 해결하기 위해 백그라운드에서 주기적으로 캐시를 갱신하거나 매 요청마다 일정 확률로 캐시를 갱신하는 PER 알고리즘을 적용하는 것을 권장
Reference
개발자가 알면 좋은 Redis 꿀팁 모음 | 올리브영 테크블로그
실무에서 바로 쓰는 Redis 핵심 팁 공유
oliveyoung.tech
'Database > Database' 카테고리의 다른 글
| DBMS 인프라 관리 총 정리 (3) | 2025.12.08 |
|---|---|
| 언제 어떤 DB를 사용해야 할까? (0) | 2025.03.18 |
| 2025년을 위한 7개의 데이터베이스 (1) | 2025.02.02 |
| 효율적인 데이터베이스 설계와 최적화 기법 (0) | 2024.08.17 |
| PostgreSQL VS MySQL (0) | 2024.07.07 |
