Important Note :
This repo is widely based on https://github.com/louisLouL/louisPy Yet, for deployment purposes (esp. AWS Lambda), it relies too heavily on pandas.
Quick start
Install
pip install rediscache_decorator
Initialize
from rediscache_decorator import Cache
from redis import StrictRedis
redis = StrictRedis(decode_responses=True)
cache = Cache(redis)
Examples
Make sure you have redis up and running.(https://redis.io/)
Example1 : Cache string return
from time import sleep
from datetime import datetime
@cache.ttl(300)
def pseudo_calc():
sleep(1)
print("Computation in progress")
return str(datetime.now())
for i in range(10):
print(pseudo_calc())
Example 3: Cache dict
@cache.dict(60)
def return_a_dict(*args, **kwargs):
sleep(1)
print("Computation in progress")
return {"now": str(datetime.now())}
for i in range(5):
print(return_a_dict())
Example 4: Cache float number
@cache.float(60)
def return_a_float(*args, **kwargs):
return random()
for i in range(5):
print(return_a_float())
Delete Cache
# Delete cache by function and signature
cache.delete_cache(return_a_float, 2, b=3)
# Delete cache by function
cache.delete_cache(return_a_float)
# Delete all caches
cache.delete_cache()
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file rediscache_decorator-1.0.tar.gz.
File metadata
- Download URL: rediscache_decorator-1.0.tar.gz
- Upload date:
- Size: 2.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/3.7.3 pkginfo/1.7.0 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.8.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c9cac950029991e70211b5b6118b3a1e06f027895bb23023cdecbefcf2e7fca8
|
|
| MD5 |
70ed865d156c86f03975d7d1f5bdc7ff
|
|
| BLAKE2b-256 |
62042cc0a1b6acc7e5eb4a6e68f2afdff022010b8713f8e26bbfd474355ad2fa
|