The in-memory data structure server that became the default cache, queue, session store, and pub/sub bus for modern backends.
Redis is an in-memory data structure server that started as a cache and grew into a multi-purpose data backbone. It supports strings, hashes, lists, sets, sorted sets, bitmaps, hyperloglog, streams, and (since 7.x) JSON and time-series modules — all in memory, all single-digit-microsecond latency. The modern Redis stack is much more than key-value caching. Redis is the default choice for: session storage, rate limiting, job queues (BullMQ, Sidekiq), leaderboards, real-time analytics, pub/sub messaging, and (with the Redis Stack modules) vector search, full-text search, and JSON document storage. The main caveat: data lives in memory by default, so cost scales with the working set. Persistence (RDB snapshots, AOF) exists but the operational model assumes you treat Redis as a cache, not a system of record. Pair it with Postgres for the durable layer.
In-memory data structures with single-digit-microsecond response times.
Strings, hashes, lists, sets, sorted sets, streams, JSON, plus bitmap and HyperLogLog commands.
Built-in messaging: pub/sub for fanout, Streams for durable logs and consumer groups.
Server-side scripts for atomic operations across multiple keys.
RedisJSON, RediSearch, RedisTimeSeries, RedisGraph, RedisBloom — bolt on more capability without leaving the server.
Login to comment
BullMQ on top of Redis is the default job queue in our stack now. Replaces a lot of cron jobs and SQS-style systems.
Don't underestimate how much time you'll spend on `maxmemory-policy` tuning. The default is to error, not evict. Set it explicitly or you'll learn the hard way at 3am.
BullMQ on top of Redis is the default job queue in our stack now. Replaces a lot of cron jobs and SQS-style systems.
Don't underestimate how much time you'll spend on `maxmemory-policy` tuning. The default is to error, not evict. Set it explicitly or you'll learn the hard way at 3am.
BullMQ on top of Redis is the default job queue in our stack now. Replaces a lot of cron jobs and SQS-style systems.
Don't underestimate how much time you'll spend on `maxmemory-policy` tuning. The default is to error, not evict. Set it explicitly or you'll learn the hard way at 3am.