Versatile persisent file cache.
Project description
Installation
$ pip install bucketcache
Automatic Generation
In one sentence, Bucket is a container object with optional lifetime backed by configurable serialisation methods that can also act as a function or method decorator.
Before everything is explained in detail, here’s a quick look at the functionality:
Container:
from bucketcache import Bucket
bucket = Bucket('cache', hours=1)
bucket[any_object] = anything_serializable_by_backend # (Pickle is the default)
Decorator:
class SomeService(object):
def __init__(self, username, password):
self.username = username
self.password = password
@bucket(method=True, nocache='skip_cache')
def expensive_method(self, a, b, c, skip_cache=False):
print('Method called.')
@expensive_method.callback
def expensive_method(callinfo):
print('Cache used.')
some_service = SomeService()
some_service.expensive_method(1, 2, 3)
some_service.expensive_method(1, 2, 3)
some_service.expensive_method(1, 2, 3, skip_cache=True)
Method called. Cache used. Method called
For in-depth information, visit the documentation!
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
BucketCache-0.9.1.tar.gz
(18.5 kB
view details)
File details
Details for the file BucketCache-0.9.1.tar.gz
.
File metadata
- Download URL: BucketCache-0.9.1.tar.gz
- Upload date:
- Size: 18.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 482cf26c9dbfa15e228886e33a758c8b1bc7ed70663ac46034dad9faf5df6f26 |
|
MD5 | 31ee1b98956413537cc1494c8fa2a69d |
|
BLAKE2b-256 | 3bab34fd27d069f976b5b25e441b93c3ffaecfb96d5082f68ba7731bc59747c6 |