Skip to content

Proxy based Redis cluster solution supporting pipeline and scaling dynamically

License

MIT, MIT licenses found

Licenses found

MIT
MIT-LICENSE.txt
MIT
wandoujia_license.txt
Notifications You must be signed in to change notification settings

CodisLabs/codis

Folders and files

NameName
Last commit message
Last commit date

Latest commit

de1ad02 · Nov 4, 2018
Mar 21, 2017
Apr 20, 2017
Jul 5, 2017
Sep 17, 2017
Sep 17, 2017
Apr 19, 2017
Nov 4, 2018
Feb 28, 2017
Oct 25, 2017
Feb 9, 2018
Nov 4, 2018
Mar 1, 2017
Mar 21, 2017
Jan 4, 2017
Nov 4, 2018
Jul 4, 2017
Jan 17, 2016
Oct 25, 2017
Nov 4, 2018
Jul 31, 2017
Feb 19, 2016

Repository files navigation

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~ :)