A cache-hit decision returns a stored value directly; the miss branch loads and stores a result.

The cache owns the miss path: schematic.

A read-through cache loads on a miss by itself

Read-through caching gives callers one reading interface: a hit returns a stored value, while a miss invokes a loader and stores its result. The important boundary is who owns that loader. Moving it behind the cache interface can remove duplicated lookup logic, but does not automatically solve concurrency, writes, authorization, or consistency between independent copies. ...

May 26, 2027 · 5 min · XB Field Notes
An ordered stream ID strip crosses out deleted or trimmed older records and brackets retained 3-0 and 4-0.

Replay needs retained records: schematic.

A Redis stream keeps events in order for consumers

A Redis stream stores entries under ordered IDs so readers can revisit retained history. Unlike Pub/Sub, the reader need not be online when the producer appends. That difference provides replay, not unconditional durability: deleted entries, retention limits, and persistence settings still determine what remains available after delay or failure. ...

May 6, 2027 · 6 min · XB Field Notes
Eight bit cells show 10100000. Only offsets 0 and 2 are set; the underlying byte is A0 and BITCOUNT is 2.

Redis bitmaps flip bits instead of storing numbers

A Redis bitmap is a string interpreted as individual bits, not a separate key type. It is useful for dense yes/no membership such as daily activity. Ten million contiguous flags need 1,250,000 payload bytes, but that estimate excludes keys, object metadata, allocation overhead, and any mapping from business identifiers to bit positions. ...

April 29, 2027 · 6 min · XB Field Notes
Two a,b,c rows compare RPUSH with LPOP at the opposite end for FIFO and RPOP at the same end for LIFO.

A Redis list is a queue, a stack, or both

A Redis list is an ordered sequence of byte values with operations at both ends. Choosing the push and pop ends determines whether it behaves as a queue or a stack. Blocking operations wait for data; they are not distributed locks, acknowledgements, or a complete message-processing protocol. ...

April 18, 2027 · 6 min · XB Field Notes
One EXEC boundary contains ordered replies OK, WRONGTYPE, OK. Both successful writes remain, and other clients do not interleave during execution.

Redis transactions isolate execution without rollback

A Redis transaction is a connection-scoped command queue followed by an isolated execution window. MULTI starts the queue; EXEC runs accepted commands in order. The useful guarantee is that another client’s commands cannot run between those operations. It is not a promise to undo successful writes when a later command fails. ...

March 31, 2027 · 6 min · XB Field Notes
Ascending ranks 0,1,2 contain ada at 10, ben at 20, and cy at 20. Equal-length bars mark the tie. REV yields cy, ben, ada.

A sorted set keeps members ordered by score

A Redis sorted set stores unique byte-string members, each associated with a numeric score. Scores determine order; they need not be unique. This supports leaderboards and time-based indexes, but it does not make score values into automatic expiration deadlines. Model membership, ranking, and cleanup as distinct operations with explicit boundaries. ...

March 21, 2027 · 6 min · XB Field Notes
One Redis key encloses three fields; an HGET arrow selects one field.

A hash groups fields: schematic.

A Redis hash keeps related fields under one key

A Redis hash maps field names to byte values under one key. It fits an entity whose attributes are read or changed independently, such as a profile with a name and score. HGET and HSET each operate in one command; using a hash does not inherently add a second network hop compared with a string. ...

March 13, 2027 · 6 min · XB Field Notes
A publication reaches an active subscription while a broken branch marks a subscription gap with no retained replay.

Pub/Sub has no replay: schematic.

Redis Pub/Sub broadcasts without replay

Redis Pub/Sub broadcasts to subscriptions that are active when a message is published. It does not retain an inbox for a disconnected listener. This suits replaceable live notifications, but a positive PUBLISH response is not evidence that a worker finished a job or that an offline consumer can recover it. ...

February 17, 2027 · 6 min · XB Field Notes