Links
- Home
- Docs
- FAQ
- Data types
- String values are capped at 512Mb.
- Lists can hold 4G-1 elements.
- Fast access near either end. Slow in the middle.
- Sets and hashes can have up to 4G-1 keys.
- Command Reference
- GETRANGE | SETRANGE
- BITOP | BITCOUNT | GETBIT | SETBIT
- EVALSHA
- pdf: Redis cluster overview
- Distributed locks with Redis (redis.io/topics/distlock)
- Redlock-py (Python implementation)
- See Also
- webdis
- Web server providing an HTTP interface to Redis.
- Uses hiredis, jansson, libevent, and http-parser.
- Edis
- Edis is a protocol-compatable Server replacement for Redis, written in Erlang. Edis's goal is to be a drop-in replacement for Redis when persistence is more important than holding the dataset in-memory. Edis (currently) uses Google's leveldb as a backend.
- twitter/twemproxy
- Fast and lightweight proxy for memcached and redis protocol. Primarily built to reduce the connection count on the backend caching servers.
- multiple hashing modes including consistent hashing and distribution. sharding. disable nodes on failure. etc.
- Instagram/redis-faina A query analyzer that parses Redis' MONITOR command for counter/timing stats about query patterns
- Discussions
- Dev
Tips and Tricks
Turn Redis async replication into synchronous replication
From: antirez
There are people that turn Redis async replication into synchronous replication with a trick: they perform:
MULTI SET foo bar PUBLISH foo:ack 1 EXEC
Because PUBLISH is propagated to the slave if they are listening with another connection to the right channel they'll get the ACK from the slave once the write reached the slave. Not always practical but it's an interesting trick.