python
from hermes.cache import Cache
from hermes.strategies import LRU
cache = Cache(strategy=LRU(maxsize=1000))
def query_data_from_database(query):
data = cache.get(query)
if data is None:
data = query_data_from_database(query)
cache.set(query, data)
return data
python
from hermes.cache import Cache
from hermes.strategies import TTL
import time
cache = Cache(strategy=TTL(seconds=60))
def compute_large_data(data):
result = cache.get(data)
if result is None:
time.sleep(10)
result = compute_large_data(data)
cache.set(data, result, expire=60)
return result