A simple key-value caching API with default implementations for an SQLite3 storage backend and a JSON convenience layer.
Project description
Note: This package is in the dangerous land of
0.x.y
versions and may be subject to breaking changes with minor version increments.
nr.caching
A simple key-value caching API with default implementations for an SQLite3 storage backend and a JSON convenience layer.
Quickstart
from nr.caching.sqlite import SqliteStore
from nr.caching.json import hash_args, JsonCacheFactory
caching_backend = SqliteStore('.cache.db')
cache_factory = JsonCacheFactory(caching_backend, default_exp=60)
data = cache_factory.namespace('my-namespace').loading(
f'expensive_function_{hash_args(parameters)}',
lambda: expensive_function(*parameters))
Copyright © 2021 Niklas Rosenstein
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
nr.caching-0.3.1.tar.gz
(6.7 kB
view hashes)
Built Distribution
Close
Hashes for nr.caching-0.3.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6706ee65cf0578d82d37ef916fbc211fe2f2a49f5e0ff41597036d48e0fc5fd6 |
|
MD5 | 2f0030d23f85af5ed39e4bab91ff94f1 |
|
BLAKE2b-256 | 4a02e10b6e0c2b13f90f7b59b266d36de93ca388d4c0085e7869e76b5d24074b |