[Cache] 메모리 지표 Raboja & Redis 메모리 정책
·
DB/In-Memory DB
개요Redis는 모든 데이터를 메모리에 저장한다.(In-Memory) 디스크 기반 DB와 달리 메모리가 곧 저장 용량의 한계가 된다. 메모리 용량이 부족해지면 데이터 손실 가능성이 있고 비싼 메모리를 추가해야 한다. maxmemory 도달 시, noeviction, volatile-lru, allkeys-lru, oom 등 서비스 장애로 이어질 현상이 나타날 수 있다. 비싼 메모리를 잘 활용하기 위해서 Redis Node에 접근해서 확인할 수 있는 메모리 관련 지표에 대해 알아보자. (이 문서에 잘 나와있음.) 🔖 참고Redis Node에 접근해서 info memory를 하면 메모리 관련 여러 지표를 볼 수 있다. 이때 _human 이라는 suffix가 붙은 메트릭들은 사람이 알아보기 쉽게 Byte 단..
[DevOps] Redis 7.x → Valkey 8.x 마이그레이션 PoC
·
DB/In-Memory DB
개요Redis Laps가 SSPL로 전환하면서, Redis 7.x 버전을 fork한 Valkey Engine 프로젝트가 시작되었다. Valkey 7.x는 Redis 7.x를 그대로 fork한 것과 다름 없어서, 마이그레이션을 할 때 클라이언트 라이브러리를 변경하는 것 이외에는 크게 신경 쓸 점이 없다. 하지만 Valkey 8.x Engine부터는 Redis와 꽤 다른 지점이 생긴다. 직접 ElastiCache Redis, Valkey Engine을 생성해서 마이그레이션 과정을 정리해본다. 1. 기본적인 읽기 전용 Cache기본 환경 정보- Node Type: cache.t4g.small- Cluster Mode: Enabled- Shards/Nodes: 1개 / 2개- Encryption in tran..
[DevOps] 캐시와 Redis, ElastiCache
·
DB/In-Memory DB
개요이번에 ElastiCache와 관련한 하나의 에픽을 마무리하게 되었다. AWS 셀프 서비스를 위해서 작업에 집중했는데, 본격적인 사내 개발자 사용자 가이드와 안내 문서를 작성하기에 앞서 캐시와 Redis, ElastiCache, 더 나아가 Redis > Valkey 엔진별 특성/ 마이그레이션 내용을 정확히 공부하고자, 블로그 글을 통해 정리해보려고 한다. 그래서 다음과 같은 순서로 글을 쭉 작성하며 정리할 예정!캐싱 개념 | Redis & ElastiCachePython으로 통신하면서 단일 노드 ElastiCache 실습해보기클러스터 모드의 ElastiCache 사용하면서 구조 파악하기Redis, Valkey 각 엔진을 생성하고, 성능 및 비용 비교하기Redis, Valkey 엔진별 차이점 파악하기이..
sebinChu
'DB/In-Memory DB' 카테고리의 글 목록