Redis
In-memory data structures for caching, queues and leaderboards.
All topics · 3 lessons · 23 resources
Learn Redis on System Design Atlas
- 01Why Redis is fast, and Redis versus MemcachedIn-memory storage, a single-threaded event loop and rich data structures, plus how persistence and replication work.Core Concepts: How Things Actually Work · 8 min read · start here
- 02Redis: persistence, replication, Sentinel and ClusterWhat keeps an in-memory database from losing data and from being a single point of failure: snapshots, the append-only file, replicas, Sentinel and hash slots.Advanced Distributed Systems · 12 min read
- 03Nearby search with Redis GEOHow Redis stores locations in a sorted set using geohash scores, how GEOSEARCH finds nearby members, how to expire stale entries, and when to move to a spatial database.Search, Analytics and Geo · 10 min read
Related topics
These share a lesson with Redis.
Curated Redis resources
GitHub
Case Studies
- Distributed Locks using Redis at GoSquaredHow to achieve crash-proof, solid distributed locks using Redis.GoSquared
- Failover with Redis Sentinel at VintedWhy Vinted chose Redis Sentinel over Redis Cluster for failover, with notes on failover timing, migration steps and monitoring.Vinted
- Improving key expiration in Redis at TwitterAfter updating to a new Redis version the Cache team saw a regression. This goes over the investigation and our conclusions.Twitter
- Memory Optimization in Redis at WattpadA real-world engineering write-up from Wattpad on distributed Caching.Wattpad
- Moving Food Feed from Redis to Cassandra at ZomatoA real-world engineering write-up from Zomato on noSQL Databases.Zomato
- Moving persistent data out of Redis at GithubHistorically, we have used Redis in two ways at GitHub: We used it as an LRU cache to conveniently store the results of expensive computations over data originally persisted in…Github
- Optimizing Redis Storage at DeliverooCounting unique users, checking if a credit card has already been used, or checking if this is a mobile user’s first visit ever — all of these require maintaining a large set of fingerprints (unique visitor ID, card fingerprint, IDFVs depending on the use case). Because this usually needs to be queried very…Deliveroo
- Redis at TrivagoA real-world engineering write-up from Trivago on distributed Caching.Trivago
- Redis Fleet at HerokuHow the Heroku Data infrastructure team manages large fleet operations, such as this one required by a recent Redis remote code execution vulnerability.Heroku
- Scaling Job Queue with Redis at SlackSlack uses a job queue system for business logic that is too time-consuming to run in the context of a web request. This system is a critical component of our architecture, used for every Slack message post, push notification, URL unfurl, calendar reminder, and billing calculation. On our busiest days, the system processes over 1.4…Slack
- Scaling Redis at TwitterYao Yue has worked on Twitter’s Cache team since 2010. She recently gave a really great ...Twitter
- Scaling Slack's Job QueueHow Slack moved from a Redis-only job queue to one buffered with Kafka to survive spikes.Slack
- Speeding Up Redis with Compression at DoorDashOne of challenges we face almost everyday is to keep our API latency low.DoorDash
Documentation
- Redis GEOSEARCH commandSearching members by radius or box around a point, with sorting and limits.Redis
- Redis geospatial data typeStoring and querying locations in Redis sorted sets.Redis
- Redis persistenceSnapshots versus the append-only file, and the durability trade-offs of each.Redis Ltd.
- Scale with Redis ClusterHash slots, resharding and failover in Redis Cluster.Redis Ltd.
- Redis DocumentationData types, persistence, replication, clustering and caching patterns.Redis Ltd.