Spring Data Redis: Repository vs RedisTemplate — 실전 성능 비교

0
AI 요약

이 글은 AI가 원문을 분석하여 핵심 내용을 요약한 것입니다.

이 게시물은 Redis CPU 100% 장애를 Spring Data Redis Repository(CrudRepository) 사용에서 RedisTemplate으로 전환해 해결한 경험을 공유하는 내용입니다. 피크 타임마다 Redis CPU가 100%까지 치솟고 응답 시간이 정상 대비 3~5배 증가했으며 일부 요청에서 타임아웃이 발생했습니다. Repository 방식은 객체를 Hash로 변환하며 HMSET과 함께 보조 인덱스를 위한 SADD 등 여러 Redis 명령이 추가로 발생해 CPU 부하가 누적되는 문제를 원인으로 설명합니다. RedisTemplate 전환 후 Redis CPU 사용률이 10% 수준으로 감소하고 응답 시간이 정상 수준으로 회복되었다고 제시합니다. 저자는 프로덕션 코드 예시로 Repository는 1회 save()에서 1,600~2,000개 필드를 HMSET으로 보내고, RedisTemplate은 SET 1회로 저장한다고 비교합니다. JMH 벤치마크에서는 Save, Get, Save+Get 시나리오 전반에서 RedisTemplate 방식이 Repository 방식보다 더 낮은 us/op를 보였다고 결과를 제시합니다.

연관 게시글