ElasticCache - Valkey

말하는 감자·2025년 6월 12일

내일배움캠프

목록 보기
68/73


이거 구조짜고 redis 조거 만드는중

배포준비로 redis 저장공간을 aws 엘라스틱 캐시 시용하려고 했는데

aws 녀석이 valkey사용을 적극 적극, 권장을 하고있었다.

궁금해서 좀 찾아봤다.

배경 : Redis 의 부분 유료화

https://www.oss.kr/oss_license_qna/show/e37e898b-ce4c-4071-bc89-b5ad3d7e75d5
https://www.inflearn.com/pages/infmation-67-20240409?srsltid=AfmBOop56519LPcQqFDkj4dn4amU1l1dZuSecgJjCg5DfouONCYLO0Gv





"Valkey"?

원래는 다들 Redis라는 메모리 캐시를 썼음. (사실 메모리 캐시 여러 종류가있지만 ㅇ)

그런데 Redis가 최근에 "이제 오픈소스 아니야, 돈 내야 돼"라는 쪽으로 바뀌기 시작함 (7.4 버전부터)

그래서 오픈소스 커뮤니티가 Redis의 마지막 무료 버전(7.2)을 복사해서 만든 게 바로 Valkey



https://aws.amazon.com/ko/blogs/tech/introducing-valkey-glide-an-open-source-client-library-for-valkey-and-redis-open-source-kr/

https://aws.amazon.com/ko/blogs/tech/get-started-with-amazon-elasticache-for-valkey/

https://www.linuxfoundation.org/press/valkey-8-0

독스에도 엄청 잘 소개되고있음



✅ AWS에서는 뭘 해줬는데?

AWS는 ElastiCache라는 서비스로 Redis를 관리형으로 제공해왔다
이제는 Redis 말고도 Valkey도 선택할 수 있게 해준다고 함 ㅇㅇㅇ((그래서 엄청 권장하는구나))
기존 Redis 앱을 아무 수정 없이 Valkey에 연결도 가능하다.
Redis Valkey 업그레이드라고 치면 AWS에서 가이드 문서도있고 블로그글도 많았다.

난 신규라서 그냥 만들어보기해본다





우리 프로젝트에서도 Valkey를 써도될까?

✅ 상황:

  • Docker-compose로 redis:latest 쓰고 있음
  • Redis에서는 기본적인 CRUD (set, get, list 등) + 메시지 큐(pub/sub) 정도만 사용 중
  • 프리티어 계정, 비용 제한 있음

괜찮다고 생각하는 이유

  1. 호환성 : Docker에 redis:latest 써도 명령어 100% 호환 (포트도 6379 그대로씀)
  2. 프리티어 : Valkey도 프리티어 750시간/month 동일 적용됨

=> Docker로 만들고 Redis 명령 쓰던 그대로 엔드포인트만 바꾸면 끝이라고 함





생성

1. 서버리스 vs 자체 캐시 설계


블로그 찾아보니깐 다들 서버리스 안하고 자체 캐시 설계를 하던데
차이점을 좀 찾아봤다.

https://docs.aws.amazon.com/AmazonElastiCache/latest/dg/WhatIs.deployment.html?utm_source=chatgpt.com

  • 서버리스 : AWS가 자동으로 확장/관리해주는 캐시 방식 (엔드포인트 하나, 자동 샤딩)
  • Self‑designed cluster (노드 기반): 사용자가 인스턴스 타입, 샤드, 리플리카 수를 직접 설정 관리

샤딩

한 대에 다 저장하지 않고, 데이터를 여러 서버로 나눠서 저장하는 방법

💡 Redis/Valkey에서 샤딩은?

key1, key2, key3 같은 데이터가 있다고 할 때

Redis가 내부적으로 해시 계산을 해서

  • key1 → 샤드 1
  • key2 → 샤드 2
  • key3 → 샤드 3
    로 나누어 저장



❌ CRUD + 메시지 큐 정도면 Cluster Mode Disabled (샤딩 없음)으로 충분하다고 생각!!





항목ServerlessSelf‑designed Cluster
설정이름만 지정하면 수 분 내 생성인스턴스 타입/샤드/리플리카 수 직접 설정
비용최소 $6/월, 사용량 기반 자동 확장고정 요금, 예약 인스턴스로 최적화 가능
확장자동 수평·수직 확장, 단일 엔드포인트수동 샤드·리플리카 설정, 다중 엔드포인트
복잡도간편, 개발 초기에 적합운영 규모 크거나 HA 필요 시 유리





2. 기본설정


서브넷은 하나만쓰니깐 자동 선택되었고
private에 저장소를 두기위해서 private 서브넷만 체크해줬음





사용량 한도..


그럴일은 없겠지만 실수로라도 퍼블릭에서 대용량 테스트를 하거나 하는 불상사를 막기위해서 바운더리 설정해줫음





결론

  • 개발 초기 → Serverless Valkey (간편하고 비용 효율적)
  • 운영 중 → 트래픽 증가 시 cluster mode disabled 또는 enabled 클러스터로 전환 고려
profile
대충 데굴데굴 굴러가는 개발?자

2개의 댓글

comment-user-thumbnail
2025년 6월 13일

아하 레디스가 유료화가 된줄 몰랐네요 저희 조도 이거에 대해서 얘기 해봐야겠어요.
꿀 정보 감사합니다!!

1개의 답글