Skip to content

[perf] Redis 캐싱 적용 #261

Description

@dochmai382

🥸 어떤 기능인가요?

  1. 자주 조회되지만 잘 바뀌지 않는 데이터 Redis 캐싱 적용

캐싱 적용 대상

  • 닉네임 중복 확인
  • 사용자 프로필 조회
  • 지출 통계

✅ 작업 내용

  • CacheConfig.java 생성 - Redis 캐시 매니저 설정
  • UserV2QueryServiceImpl.java - isNicknameAvailable() 캐싱 적용
  • UserV2ServiceImpl.java - 닉네임 변경 시 캐시 삭제 처리
  • UserV2QueryServiceImpl.java - getUserWithProfileImage() 캐싱 적용
  • UserV2ServiceImpl.java - 프로필 수정/삭제 시 캐시 삭제 처리
  • ExpenseV2QueryServiceImpl.java - 지출 통계 캐싱 적용
  • ExpenseV2ServiceImpl.java - 지출 추가/수정/삭제 시 캐시 삭제 처리
  • Redis CLI + Actuator로 캐시 히트율 확인

😇 이때까지 끝낼게요!


😵 참고할만한 자료 (선택)

측정 방법

# Redis 캐시 키 확인
redis-cli -h localhost -p 6379
keys *nicknameCheck*
keys *userProfile*

# Actuator 캐시 히트율
GET /actuator/metrics/cache.gets?tag=result:hit
GET /actuator/metrics/cache.gets?tag=result:miss

🙇‍♀️ 이슈 확인했어요:)

  • 진소희
  • 반준영

Metadata

Metadata

Assignees

Labels

Expense개인 및 공동 생활비를 기록하고 분석하는 가계부 기능.Performance성능개선User사용자 프로필 관리 및 탈퇴 기능을 포함한 개인 정보 관리.

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions