Skip to content

Protocols overview

fastcached speaks four wire protocols off the same storage engine:

Protocol Reference Status
memcached (text) memcached protocol.txt Full
memcached (binary) memcached protocol_binary.xml Full
memcached (meta) memcached protocol.txt §meta Full
Redis (RESP2) Redis Serialization Protocol Key-value subset

Each connection is routed to one handler based on its first bytes — see Autodetection for the exact rules. A given client speaks one protocol; mixing on a single connection is not supported.

At a glance

Each row is a logical capability area; cells show how complete each protocol is in fastcached today.

Capability area memcached text memcached binary memcached meta Redis RESP2
Storage (set/add/replace/append/prepend) Full Full Full Partial (SET only)
CAS Full Full Full Not applicable
Retrieval (get / gets) Full Full Full Full
TTL refresh (touch / GAT) Full Full Full Not supported
Arithmetic (incr / decr) Full Full Full Not supported
Deletion Full Full Full Full
Flush Full Full n/a Full
Stats Sub-commands Basic Via me INFO only
Slabs / LRU tuning Synthetic stub n/a n/a n/a
watch event streaming Not supported n/a n/a n/a
Authentication n/a SASL rejected n/a AUTH rejected
Multiple databases n/a n/a n/a Single keyspace
Pub / sub n/a n/a n/a Not supported
Scripting (EVAL) n/a n/a n/a Not supported

Legend: Full = full spec coverage · Partial = subset · n/a = not part of that protocol · Not supported = not implemented in fastcached.

The next page, the Coverage matrix, maps each logical operation to the specific command, opcode, or meta-flag in every protocol.

Per-protocol pages

Compatibility

See Compatibility with upstream for a per-protocol completeness scorecard.