Skip to content
Proxy based Redis cluster solution supporting pipeline and scaling dynamically
Branch: release3.2
Clone or download
maxgalbu and spinlock tutorial: general fixes (#1537)
* tutorial: fix link to markdown file

* typos and link fixes
Latest commit de1ad02 Nov 4, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Godeps proxy: support statsd in metrics reporter (#1170) Mar 21, 2017
admin misc: trim trailing spaces Apr 20, 2017
ansible #修改main.yml Jul 5, 2017
cmd models: format zkclient.go & etcdclient.go Sep 17, 2017
config
deploy
doc tutorial: general fixes (#1537) Nov 4, 2018
example example: update listen ports of sentinels Feb 28, 2017
extern extern: move redis-3.2.8 to deprecated Oct 25, 2017
kubernetes fix k8s start script, use -lt instead of < (#1443) Feb 9, 2018
pkg
scripts scripts: fix issue #1161, wrong port number Mar 1, 2017
vendor proxy: support statsd in metrics reporter (#1170) Mar 21, 2017
.gitignore
.travis.yml
Dockerfile Dockerfile: upgrade to golang:1.8 Jul 4, 2017
MIT-LICENSE.txt
Makefile
README.md Update README.md (#1580) Nov 4, 2018
version
wandoujia_license.txt

README.md

Gitter Build Status

Codis is a proxy based high performance Redis cluster solution written in Go. It is production-ready and widely used at wandoujia.com and many companies. You can see Codis Releases for latest and most stable realeases.

Donation

Donate if you want to help us maintaining this project. Thank you! See this issue for details

Compared with Twemproxy and Redis Cluster

CodisTwemproxyRedis Cluster
resharding without restarting clusterYesNoYes
pipelineYesYesNo
hash tags for multi-key operationsYesYesYes
multi-key operations while reshardingYes-No(details)
Redis clients supportingAny clientsAny clientsClients have to support cluster protocol
"Resharding" means migrating the data in one slot from one redis server to another, usually happens while increasing/decreasing the number of redis servers.

Other Features

  • GUI website dashboard & admin tools
  • Supports most of Redis commands, Fully compatible with Twemproxy(https://github.com/twitter/twemproxy)
  • Proxies can register on zk/etcd, clients can avoid dead proxies, see "High Availability" section.

Tutorial

简体中文 English (WIP)

FAQ

简体中文 English (WIP)

High Availability

简体中文 English (WIP)

Architecture

architecture

Snapshots

Proxy proxy

Slots slots

Group group

Sentinel sentinel

Benchmarks

See benchmark results

Authors

Active authors:

Emeritus authors:

Thanks:

License

Codis is licensed under MIT, see MIT-LICENSE.txt


You are welcome to use Codis in your product, and feel free to let us know~ :)

You can’t perform that action at this time.