Codis
Codis is a high-performance Redis cluster solution that is based on a proxy and written in Go. It is widely used at wandoujia.com and many other companies. For the latest and most stable releases of Codis, you can refer to the Codis Releases page.
Compared with Twemproxy and Redis Cluster
Codis | Twemproxy | Redis Cluster | |
---|---|---|---|
resharding without restarting cluster | Yes | No | Yes |
pipeline | Yes | Yes | No |
hash tags for multi-key operations | Yes | Yes | Yes |
multi-key operations while resharding | Yes | - | No(details) |
Redis clients supporting | Any clients | Any clients | Clients have to support cluster protocol |
“Resharding” refers to migrating data in one slot from one Redis server to another. This typically occurs when the number of Redis servers is being increased or decreased.
Other Features
- GUI website dashboard and admin tools
- Supports most Redis commands and is fully compatible with Twemproxy (https://github.com/twitter/twemproxy)
- Proxies can register on zk/etcd, allowing clients to avoid dead proxies (see “High Availability” section)
- Automatic data rebalancing
Reference
https://github.com/CodisLabs/codis