Adds dogpile.cache support to your Flask application
Project description
Easy to Use
# ==================== config.py ====================
DOGPILE_CACHE_URLS = ["127.0.0.1:11211"]
DOGPILE_CACHE_REGIONS = [
('hour', 3600),
('day', 3600 * 24),
('month', 3600 * 24 * 31),
]
# Default settings:
# DOGPILE_CACHE_BACKEND = 'dogpile.cache.memcached'
# ==================== app.py ====================
import config
from flask import Flask
from flask.ext.dogpile_cache import DogpileCache
app = Flask(__name__)
app.config.from_object(config)
cache = DogpileCache()
cache.init_app(app)
# Alternative way: cache = DogpileCache(app)
@cache.region('hour')
def cached_func(*args):
print "Heavy computation here", args
return args
value = cached_func()
cache.invalidate(cached_func, *args) # Invalidating cache for cached_func
cache.refresh(cached_func, *args) # Refreshing cache for cached_func
cache.set(cached_func, value, *args) # Setting custom value for cached_func
cache.invalidate_region('hour') # Invalidate cache for all funcs
# decorated with @cache.region('hour')
cache.invalidate_all_regions() # Invalidate cache for all funcs
# decorated with @cache.region
Easy to Install
$ pip install Flask-Dogpile-Cache
Links
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.