[][src]Module blip::service::cache

This is supported on feature="cache" only.

A distributed binary cache with an immutable cache filling mechanism.

The design is similar in many ways to (and is based on) groupcache.

Like groupcache, this:

  • Shards by key to select which node is responsible for a load.

  • Is wholly in-process. No separate server deployments are required to use it.

  • Uses a deduplicated cache-filling mechanism. Cache misses will induce exactly one coordinated fill operation across all interested nodes in the cluster, the result of which is multiplexed to each simultaneous request.

  • Only supports immutable values. Once a key has been filled, the value for that key cannot be changed. It may be forgotten (given enough time), but that behavior can't be relied upon.

  • Supports automatically mirroring popular keys to multiple nodes.

Unlike groupcache, this:

  • Automatically discovers and monitors peers via integration with a blip Mesh.

Structs

Cachefeature="cache"

A distributed binary cache. May be used standalone, or added to a Mesh to operate in networked mode.

Traits

Sourcefeature="cache"

A type that can produce a binary value, given a key.