blob: d5554cd3b4d4e8f7c51f81d367fc685c82e1fe57 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
import redis
import pickle
import os
REDIS_HOST = os.getenv("REDIS_HOST", "127.0.0.1")
REDIS_PORT = os.getenv("REDIS_PORT", "6379")
REDIS_URL = f"redis://{REDIS_HOST}:{REDIS_PORT}/0"
class Cache:
def __init__(self, redis_url=REDIS_URL):
self.client = redis.Redis.from_url(redis_url)
def set(self, key, value, ex=None):
pickled = pickle.dumps(value)
self.client.set(key, pickled, ex=ex)
def get(self, key):
data = self.client.get(key)
if data is not None:
return pickle.loads(data)
return None
def delete(self, key):
self.client.delete(key)
cache = Cache()
|