uWSGI Backend¶
- class cachelib.uwsgi.UWSGICache(default_timeout=300, cache='')¶
Bases:
cachelib.base.BaseCache
Implements the cache using uWSGI’s caching framework.
Note
This class cannot be used when running under PyPy, because the uWSGI API implementation for PyPy is lacking the needed functionality.
- Parameters
default_timeout (int) – The default timeout in seconds.
cache (str) – The name of the caching instance to connect to, for example: mycache@localhost:3031, defaults to an empty string, which means uWSGI will cache in the local instance. If the cache is in the same instance as the werkzeug app, you only have to provide the name of the cache.
- add(key, value, timeout=None)¶
Works like
set()
but does not overwrite the values of already existing keys.- Parameters
key (str) – the key to set
value (Any) – the value for the key
timeout (Optional[int]) – the cache timeout for the key in seconds (if not specified, it uses the default timeout). A timeout of 0 indicates that the cache never expires.
- Returns
Same as
set()
, but alsoFalse
for already existing keys.- Return type
boolean
- clear()¶
Clears the cache. Keep in mind that not all caches support completely clearing the cache.
- Returns
Whether the cache has been cleared.
- Return type
boolean
- delete(key)¶
Delete key from the cache.
- Parameters
key (str) – the key to delete.
- Returns
Whether the key existed and has been deleted.
- Return type
boolean
- get(key)¶
Look up key in the cache and return the value for it.
- Parameters
key (str) – the key to be looked up.
- Returns
The value if it exists and is readable, else
None
.- Return type
Any
- has(key)¶
Checks if a key exists in the cache without returning it. This is a cheap operation that bypasses loading the actual data on the backend.
- Parameters
key (str) – the key to check
- Return type
bool
- serializer = <cachelib.serializers.UWSGISerializer object>¶
- set(key, value, timeout=None)¶
Add a new key/value to the cache (overwrites value, if key already exists in the cache).
- Parameters
key (str) – the key to set
value (Any) – the value for the key
timeout (Optional[int]) – the cache timeout for the key in seconds (if not specified, it uses the default timeout). A timeout of 0 indicates that the cache never expires.
- Returns
True
if key has been updated,False
for backend errors. Pickling errors, however, will raise a subclass ofpickle.PickleError
.- Return type
boolean