LRU Cache for Python using Redis
Project description
LRU Cache
This is a simple Least Recently Used (LRU) Cache with expiration time that use redis to store the data.
Installation
Usage
Import LRUCache from the lru_redis_cache module, when creating an instance of this class you could pass:
cache_size: Max size of the cache, the default value is 10ttl: Max time to expire the cache, the default value is 60 secondsredis_host: Host where the redis instance is allocated, default is localhostredis_port: Redis port, default is 6379
This class has three public methods to manage the cache:
-
set(name, value)this function set a new cache value or replace the previous. -
get(name)this function return the cache element if it is stores, otherwise it will return aNonevalue. -
set_connection(RedisConnection)this function allows you to set the redis instance to be used.
from lru_redis_cache import LRUCache
cache = LRUCache(cache_size=5, ttl=60)
cache.set("my_key", "my_value")
cache.get("my_key")
# Output
"my_value"
Tests
In order to run the test cases you need to install the basic requirements from requirements.txt by running the following command.
pip install -r requirements.txt
Then, you need to run
python -m pytest
Information
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
File details
Details for the file lru_redis_cache-0.1.tar.gz.
File metadata
- Download URL: lru_redis_cache-0.1.tar.gz
- Upload date:
- Size: 2.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.6.0 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.7.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
89242997b9a12eacdd4d97f6d33df0592c85ac7a83b23b5c287edc6e82094a27
|
|
| MD5 |
3c035ff31ecbea2a1ba8f29abd201378
|
|
| BLAKE2b-256 |
3c0aadca2374852012bd5b26946785f600ed0d9caf9a76d54067816d99ce12c5
|