Overview
Memcache cache controller.
This adapter lets you connect to a » memcached server, which uses system memory to cache data. In general, you never need to instantiate it yourself; instead, use Solar_Cache as the frontend for it and specify 'Solar_Cache_Memcache' in the config keys as the 'adapter' value.
This kind of cache is extremely fast, especially when on the same server as the web process, although it may also be accessed via network. This particular adapter uses the PHP » memcache extension to manage the cache connection. The extension is not bundled with PHP; you will need to follow the » installation instructions before you can use it.
Configuration Keys
active
: Whether or not the cache should be active at instantiation.life
: The lifetime of each cache entry in seconds.prefix
: A prefix to place in front of every cache entry key; e.g., use this to deconflict between identical cache keys in caches shared among different domains or environments.host
: The memcached host name, default 'localhost'.port
: The memcached port number, default 11211.timeout
: The timeout before the server connection is considered a miss, in seconds. Default is 1 second, and should not really be changed for reasons other than testing purposes.pool
: An array of memcache connections to connect to in a multi-server pool. Each connection should be represented by an array with the following keys:host
,port
,persistent
,weight
,timeout
,retry_interval
,status
andfailure_callback
. Thepool
is empty by default, and will only be used instead of a single-server connection if non-empty.
Constants
None.
Public Properties
These are all the public properties in the Solar_Cache_Adapter_Memcache class.
You can also view the list of all public, protected, and private properties.
-
$memcache
-
A memcache client object.
Public Methods
These are all the public methods in the Solar_Cache_Adapter_Memcache class.
You can also view the list of all public, protected, and private methods.
-
__construct()
-
Constructor.
-
__destruct()
-
Default destructor; does nothing other than provide a safe fallback for calls to parent::__destruct().
-
add()
-
Inserts cache entry data, but only if the entry does not already exist.
-
delete()
-
Deletes a cache entry.
-
deleteAll()
-
Removes all cache entries.
-
dump()
-
Convenience method for getting a dump the whole object, or one of its properties, or an external variable.
-
entry()
-
Returns the adapter-specific name for the entry key.
-
fetch()
-
Gets cache entry data.
-
fetchOrAdd()
-
Fetches data if it exists; if not, uses a callback to create the data and adds it to the cache in a race-condition-safe way.
-
fetchOrSave()
-
Fetches data if it exists; if not, uses a callback to create the data and saves it to the cache.
-
getLife()
-
Gets the cache lifetime in seconds.
-
increment()
-
Increments a cache entry value by the specified amount.
-
isActive()
-
Gets the current activity state of the cache (on or off).
-
locale()
-
Looks up class-specific locale strings based on a key.
-
save()
-
Updates or inserts cache entry data.
-
setActive()
-
Makes the cache active (true) or inactive (false).