Performance: Flask-Caching for response caching
Improves page load speed by serving cached responses quickly without recomputing them on each request.
from flask import Flask from flask_caching import Cache app = Flask(__name__) cache = Cache(app, config={'CACHE_TYPE': 'SimpleCache'}) @app.route('/data') @cache.cached(timeout=60) def data(): result = sum(i * i for i in range(1000000)) return str(result)
from flask import Flask app = Flask(__name__) @app.route('/data') def data(): # Simulate expensive computation result = sum(i * i for i in range(1000000)) return str(result)
| Pattern | DOM Operations | Reflows | Paint Cost | Verdict |
|---|---|---|---|---|
| No caching, recompute on each request | N/A (server-side) | N/A | Higher due to delayed response | [X] Bad |
| Flask-Caching with simple cache | N/A (server-side) | N/A | Lower due to fast response | [OK] Good |
@cache.cached with a named argument timeout.timeout=60./time within 10 seconds?
from flask import Flask
from flask_caching import Cache
import time
app = Flask(__name__)
cache = Cache(app, config={'CACHE_TYPE': 'simple'})
@app.route('/time')
@cache.cached(timeout=10)
def get_time():
return str(time.time())
# Assume the first request prints 1680000000.0from flask import Flask
from flask_caching import Cache
app = Flask(__name__)
cache = Cache()
@cache.cached(timeout=30)
@app.route('/')
def home():
return 'Welcome!'
cache.init_app(app)?user=admin. Which approach correctly applies Flask-Caching to cache only those responses?unless parameter skips caching when condition is True.unless=lambda: request.args.get('user') != 'admin' caches only when user is 'admin'.Pass the test and this pattern moves unknown