ETC/Redis

redis의 대체제, valkey (redis vs valkey)

seokhyun2 2025. 1. 5. 23:05

0. 개요

요즘 redis의 대체제로 떠오르고 있는 valkey를 소개해보려고 합니다.

redis는 오랜 시간 동안, cache의 대명사라해도 과언이 아닐 정도로 굳건하게 자리를 지키고 있었습니다.

그런데 도대체 왜 redis를 대체제가 생겨난걸까요?

 

1. redis license

redis의 license는 그동안 아무나 무료로 가져다 쓸 수 있도록 오픈되어 있었습니다.

그런데 2024년 3월에 license 정책을 변경하였습니다.

https://redis.io/blog/what-redis-license-change-means-for-our-managed-service-providers/

 

What Redis’ License Change Means for Our Managed Service Providers - Redis

Since we announced last week that future versions of Redis will be released under dual source-available licenses, we decided to outline a few changes in how we will work with managed service providers going forward. Redis considers companies offering Redis

redis.io

변경 내용은 대부분의 케이스는 동일하지만, MSP(Managed Service Providers)로 redis를 서비스로 제공하는 회사들은 7.4 버전부터는 더 이상 무료로 쓸 수 없다는 것인데요.

MSP로 redis를 제공하는 회사들이 어떤 회사들이냐면 바로 AWS, google cloud를 포함한 클라우드 회사들입니다.

많은 클라우드 회사들이 redis를 cache 서버로 사용할 수 있도록 제공하고 있는데, 더 이상 무료로 redis를 사용하지 못하게 되는 것이지요.

이쯤되면 다들 짐작하시겠죠?

이 license 문제 때문에 클라우드 회사들이 redis를 더 이상 쓸 수 없게 되자 redis를 대체제가 탄생된 것이죠.

 

2. valkey

valkey가 등장하게 된 배경은 이제 위에서 설명드렸으니 valkey가 어떤 녀석인지 알아보도록 하겠습니다.

아까 redis의 license에서 7.4 버전부터 변경된다고 말씀을 드렸습니다.

그래서 valkey는 7.4버전보다 앞 버전인 7.2 버전을 fork해서 출발했습니다.

그러다보니 7.2까지는 redis와 valkey가 거의 동일하다고 할 수 있죠.

그래서 7.2 버전 기준으로는 사용 방법도 동일하다고 보시면 되고 migration도 valkey 서버를 띄우고 endpoint만 전환해도 될 정도로 호환성도 좋습니다.

기존에 사용하던 redis client 코드를 그대로 쓰면서 endpoint만 바꿔도 valkey로 전환을 쉽게 할 수 있는 것이죠.

그러다보니 redis를 쉽게 대체할 수 있는 환경까지 갖춰져서 valkey가 떠오르고 있습니다.

 

3. valkey & aws

aws에서는 elasticache 서비스에서 redis와 memcached를 캐시 서버로 사용할 수 있도록 제공하고 있었는데요.

valkey를 추가하여 현재는 redis, memcached, valkey 3개 중에 선택하여 사용할 수 있습니다.

그리고 valkey와 redis를 완전히 동일하게 사용할 수 있도록 인터페이스를 제공하면서, 같은 사양의 서버에서 valkey가 더 싼 가격으로 서버를 제공함으로써 valkey로의 전환을 유도하고 있습니다.

 

4. 마무리

오늘은 떠오르는 redis의 대체제 valkey에 대해서 소개를 해보았습니다.

valkey는 redis의 fork로 시작하여 사용방법이 redis와 동일하기 때문에 굳이 사용방법은 소개하지 않았지만, 클라우드를 사용하고 계신다면 앞으로의 redis 버전은 더 이상 제공되지 않을 예정이므로 이번 기회에 비용도 줄일 겸 valkey로의 전환을 고려해보시면 좋을 것 같습니다.

'ETC > Redis' 카테고리의 다른 글

[Redis] Redis란? & Redis 사용방법  (0) 2021.02.07