Jifty::CAS::Store::Nested - A layered CAS store
This is a layered backend for Jifty::CAS, which provides a way to combine
multiple CAS backends. Writes are passed through to every layer, whereas reads
stop on the first layer which contains the data. This allows a fast in-memory
store to be layered on top of a durable file store, for instance.
Configuration requires providing two or more CAS classes:
framework:
CAS:
Default:
Class: Jifty::CAS::Store::Nested
Parts:
- Class: Jifty::CAS::Store::Memory
- Class: Jifty::CAS::Store::LocalFile
Path: %var/cas%
Constructs the sub-parts and stores them.
Stores the BLOB (a Jifty::CAS::Blob) in all parts, starting at the bottom.
Returns the key on success or undef on failure.
Returns the most recent key for the given pair of
"DOMAIN" and
"NAME", or undef if none such exists.
Returns a Jifty::CAS::Blob for the given pair of
"DOMAIN" and
"KEY", or undef if none such exists.
If any of the parts are durable, the entire nested CAS backend is durable.