NAME¶
Jifty::CAS::Store::Memcached - A memcached backend for Jifty's
Content-Addressable Storage facility
SYNOPSIS¶
At the bare minimum, add the following to your Jifty config.yml:
framework:
CAS:
BaseClass: 'Jifty::CAS::Store::Memcached'
The options available include:
framework:
CAS:
BaseClass: 'Jifty::CAS::Store::Memcached'
Memcached:
# any options Cache::Memcached supports
servers:
- 10.0.0.2:11211
- 10.0.0.3:11211
compress_threshold: 5120
# Turned on by default. Keeps CAS working when memcached fails by
# falling back to the default in-process store. It probably should
# be turned off in most cases (like so) after successful testing.
MemcachedFallback: 0
DESCRIPTION¶
This is a memcached backend for Jifty::CAS. For more information about Jifty's
CAS, see "DESCRIPTION" in Jifty::CAS.
METHODS¶
memcached¶
Returns the Cache::Memcached object for this class.
_store DOMAIN NAME BLOB¶
Stores the BLOB (a Jifty::CAS::Blob) in memcached. Returns the key on success or
undef on failure.
key DOMAIN NAME¶
Returns the most recent key for the given pair of "DOMAIN" and
"NAME", or undef if none such exists.
retrieve DOMAIN KEY¶
Returns a Jifty::CAS::Blob for the given pair of "DOMAIN" and
"KEY", or undef if none such exists.
memcached_config¶
Returns a hashref containing arguments to pass to Cache::Memcached during
construction. The defaults are like:
{
servers => [ '127.0.0.1:11211' ],
debug => 0,
namespace => Jifty->config->framework('ApplicationName'),
compress_threshold => 10240,
}
To change these options, set them in your Jifty application config file under
"/framework/CAS/Memcached" like so:
framework:
CAS:
BaseClass: 'Jifty::CAS::Store::Memcached'
Memcached:
servers:
- 10.0.0.2:11211
- 10.0.0.3:11211
compress_threshold: 5120
memcached_fallback¶
Returns a boolean (from the config file) indicating whether or not memcached
should fallback to the per-process, in-memory store.