Challenge
Popular keys expire together and every request hits the database.
Agnotic approach
Expiry times get random jitter, and one request rebuilds a missing key while others wait or serve the old value.
Redis is easy to add and easy to misuse: a cache that becomes the only copy of the data, a queue that loses jobs on restart, a hot key that stalls every request. Agnotic Technologies designs and builds the Redis layer of your application and picks the structure, persistence, eviction and hosting for each job it does.
Trusted by global innovators
























Redis
Redis development is designing, building and running the in-memory data layer that sits beside your main database: caches, session stores, rate limiters, job queues, leaderboards and streams. Agnotic Technologies chooses the Redis data structure, persistence setting, eviction policy and hosting for each job, and builds the application code that uses it.
Redis is usually not the system of record. When it has to be, persistence and replication are designed for that from the start, not switched on later.
Wider backend architecture sits with our backend development services, and cloud landing zones with cloud consulting. This page is about the Redis layer itself.
Decision table
Our starting settings for each job. Load testing and your failure tolerance decide the final values.
| Workload | Redis structure | Persistence | Eviction policy | Failure point if it is wrong |
|---|---|---|---|---|
| Page or API cache | Strings or hashes with a TTL | None or RDB | allkeys-lru or allkeys-lfu | Cache stampede when popular keys expire together |
| Session store | Hashes with a TTL per session | AOF every second, plus replicas | volatile-lru, or noeviction with memory headroom | Users logged out after a restart or an eviction |
| Rate limiter | Counters with INCR and EXPIRE, or sorted sets for sliding windows | None | noeviction | Limits reset or skipped when keys are evicted |
| Job queue | Streams with consumer groups | AOF every second | noeviction | Jobs lost on restart, or processed twice without acknowledgement |
| Leaderboard | Sorted sets | RDB or AOF, rebuildable from the database | noeviction | Scores lost with no source to rebuild them from |
| Pub/sub fan-out | Pub/sub channels | None; messages are not stored | Any | Disconnected subscribers miss messages; use streams when delivery matters |
| Event stream | Streams with trimming | AOF | noeviction | Memory grows until writes fail if streams are never trimmed |
Persistence and eviction are set per instance, so when one Redis serves jobs with different needs, we split them into separate instances.
Limits
Things we move out of Redis when we find them there.
Failure points
The incidents we see most in Redis layers, and the control for each.
Challenge
Popular keys expire together and every request hits the database.
Agnotic approach
Expiry times get random jitter, and one request rebuilds a missing key while others wait or serve the old value.
Challenge
One hot key overloads a single shard.
Agnotic approach
Hot keys are split, or cached briefly inside the application.
Challenge
A KEYS command or a huge value blocks the server.
Agnotic approach
SCAN replaces KEYS, value sizes are capped and the slow log is watched.
Challenge
Memory fills and writes start failing.
Agnotic approach
maxmemory and the eviction policy are set for each instance, with alerts on memory use and fragmentation.
Challenge
A failover drops recent writes.
Agnotic approach
Data that must survive uses AOF and replicas, and the application treats what it cannot lose as a design decision, not a default.
Challenge
An open port exposes the instance.
Agnotic approach
Redis runs on private networks only, with TLS, an ACL user per application and dangerous commands disabled.
Hosting and licensing
The choice depends on who runs it, which licence terms you accept and which features you need.
Who it is for
Teams that need speed without losing data they care about.
Caching and rate limiting that keep the main database out of the hot path.
Per-tenant rate limits, sessions and quotas shared across application instances.
Leaderboards, counters and live feeds on sorted sets and streams.
A Redis that grew without settings, monitoring or a failover plan.
Sensitive workloads that need encryption, access control and careful key design.
The Redis services we deliver, from the first cache to a clustered production setup.
Cache-aside or write-through caching with TTLs, jitter and stampede protection, wired into your API.
Session storage and sliding-window rate limiting shared across every application instance.
Job queues on streams with consumer groups, acknowledgements, retries and dead-letter handling.
ACL users per service, TLS in transit, encryption at rest on managed services and no personal data in key names.
Replicas, Sentinel or Cluster sized to your failure tolerance, proven with planned failovers.
Hit ratio, memory and fragmentation, evictions, slow log, latency and replication lag on one dashboard.
Technologies
Open source and managed options behind the hosting choices above.
Redis and Valkey documentation, each linked to its primary source.
Redis offers RDB persistence, which takes point-in-time snapshots at set intervals, and AOF persistence, which logs every write; with the AOF fsync policy set to every second, the documentation notes you may lose one second of data in a disaster.
Source: Redis documentation: persistenceWhen Redis reaches its maxmemory limit, the noeviction policy returns errors for commands that store new data, while allkeys-lru and volatile-lru evict the least recently used keys from all keys or only from keys that have an expiry.
Source: Redis documentation: key evictionRedis access control lists limit each connection to specific commands and keys, after the client authenticates with a username and a valid password.
Source: Redis documentation: ACLStarting with Redis 8, Redis Open Source is available under a choice of three licences: the Redis Source Available License v2, the Server Side Public License v1 and the GNU Affero General Public License v3.
Source: Redis licensesValkey is an open source, BSD-licensed key/value datastore backed by the Linux Foundation, and it includes 3-Clause BSD-licensed Redis code.
Source: Valkey project siteScope and cost
Redis work is priced per engagement, not from a list. These factors set the size.
How many jobs Redis will do: caching, sessions, rate limits, queues or streams.
Whether any workload needs persistence, replicas and tested failover.
Request volume, hot keys and value sizes, which decide the topology.
A managed service, self-managed Redis Open Source or Valkey.
Moving from Memcached, an in-process cache or an older Redis setup.
Encryption, access control and agreements needed for regulated data.