Concepts

Concepts#

These pages explain how the package works and why. Read them away from the keyboard.

🧭 How plone.memoize picks a cache

The one hook the package replaces, and what it leaves alone.

How plone.memoize picks a cache
βœ… What "shareable" means

Plain data goes to Redis; everything else stays in RAM.

What "shareable" means
πŸ”€ Per-function routing

How each function learns where its values belong.

Per-function routing
πŸ›Ÿ Failure model

What happens when Redis is slow, down, or full.

Failure model
πŸ“‹ Copies, not shared objects

Why a value read from Redis is a new object every time.

Copies, not shared objects
πŸ”’ Security model

Who can write to the cache, and what a reader can be made to run.

Security model
πŸ—ΊοΈ Which Plone caches land where

The cached functions in Plone, and the route each one takes.

Which Plone caches land where
🚫 When not to use it

Single instances, and keys that leave something out.

When not to use it