Databases 5 min read

Redis Cache Cluster Solutions: Dynomite, Twemproxy, and Codis

This article reviews three open‑source Redis cache clustering approaches—Netflix's Dynomite, Twitter's Twemproxy, and Wandoujia's Codis—explaining their architectures, advantages, licensing, and suitability for production environments as alternatives to the native Redis cluster feature.

Art of Distributed System Architecture Design
Art of Distributed System Architecture Design
Art of Distributed System Architecture Design
Redis Cache Cluster Solutions: Dynomite, Twemproxy, and Codis

Due to the limited memory management capacity of a single Redis server, using an oversized Redis leads to sharp performance degradation, and a server failure can affect a larger range of services. Redis 3.0 beta1's cluster feature is not yet suitable for production. Therefore, many companies have developed Redis cache cluster solutions for better performance and availability. Below is a summary of the solutions from Netflix, Twitter, and China’s Wandoujia, for reference.

1. Netflix's open‑source generic implementation of Dynamo, Dynomite

Dynomite is Netflix's open‑source generic implementation of Amazon's Dynamo distributed storage engine. Written in C/C++ and implemented as a proxy, Dynomite enables Redis and Memcached to become distributed databases and also supports persistent back‑ends such as MySQL, BerkeleyDB, and LevelDB. It offers simple, efficient, cross‑data‑center replication, aiming to provide replication capabilities that typical database engines lack. Dynomite is released under the Apache License 2.0; more details can be found on Netflix’s technical blog.

2. Twitter's Redis/Memcached proxy service, Twemproxy

Twemproxy is a lightweight Redis proxy server written in C. By adding a proxy layer, it aggregates multiple Redis instances behind a single endpoint, allowing applications to interact with Twemproxy without needing to know the number of underlying Redis or Memcached nodes. When a node fails, Twemproxy automatically removes it from the cluster, and reconnects when the node recovers. The proxy introduces a small performance overhead; tests by the Redis author show at most a 20% slowdown compared with direct Redis access. Twemproxy is also released under the Apache License 2.0; further information is available on its GitHub page.

3. Wandoujia's Redis cluster solution, Codis

Codis is a Redis distributed cluster solution developed by Wandoujia using Go and C, implemented as a proxy and fully compatible with Twemproxy. From the application’s perspective, connecting to a Codis Proxy is indistinguishable from connecting to a single Redis instance; the proxy handles request forwarding, live data migration, and other backend tasks transparently. Effectively, the backend appears as an “infinite‑memory” Redis service. Codis is released under the MIT License; more details can be found on its GitHub repository.

In addition, several non‑open‑source solutions exist at companies such as Sina, Baidu, Taobao, and Tencent. Until Redis provides an official production‑ready cluster feature, the three solutions above are worth considering for production use.

Disclaimer: The content is sourced from public internet channels; the author remains neutral and provides it for reference and discussion only. Copyright belongs to the original authors or institutions; please contact for removal if infringement occurs.

distributed systemsCacheClusteringRedisTwemproxyCodisDynomite
Art of Distributed System Architecture Design
Written by

Art of Distributed System Architecture Design

Introductions to large-scale distributed system architectures; insights and knowledge sharing on large-scale internet system architecture; front-end web architecture overviews; practical tips and experiences with PHP, JavaScript, Erlang, C/C++ and other languages in large-scale internet system development.

0 followers
Reader feedback

How this landed with the community

login Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.