Skip to content

MethodCache can be used to cache the result of an method in a flexible way.

Notifications You must be signed in to change notification settings

eieste/MethodCache

Repository files navigation

Python Method Cache

Build Status PyPI version Documentation Status

What it does

MethodCache can be used to cache the result of an method in a flexible way. This libary has no dependencies!

Currently only TTL Cache available

The cache storage can be segmented in categories. Methods with the @cache decorator are saved in these categories.

Example

from methodcache import cache, Store
import time

# TTL in Seconds (Default TTl is 60)
st = Store(ttl=60*300)

# Define Store for this Cache, and overwrite Store TTL. And categorize this cache object to demo
@cache(store=st, ttl=5, category="demo")
def doothings(a,b,c):
    # Do here what ever you want.
    # eg. MySQL querys or other slow operations
    time.sleep(2)
    return a+b+c

# Slow Execution
doothings(1,2,3)
# Slow Execution

doothings(4,5,6)

# Fast Execution because the Cache was used
doothings(1,2,3)
time.sleep(2)

# Slow Execution because the Cache TTL is Expired
doothings(1,2,3)

Documentation

Read the Docs

or show example.py

About

MethodCache can be used to cache the result of an method in a flexible way.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published