Comment utiliser Flask-Cache pour la gestion du cache

王林
Libérer: 2023-08-02 17:30:24
original
1990 Les gens l'ont consulté

Comment utiliser Flask-Cache pour la gestion du cache

Le cache est l'un des moyens importants pour améliorer les performances des applications. Il peut stocker certains résultats d'opérations nécessitant beaucoup de calculs ou de temps, et renvoyer directement les résultats mis en cache en cas de besoin la prochaine fois pour éviter. duplication de calculs ou de requêtes de base de données pour améliorer la vitesse de réponse. Dans le processus de développement d'applications Web à l'aide de Flask, nous pouvons utiliser l'extension Flask-Cache pour la gestion du cache. Cet article expliquera comment utiliser Flask-Cache pour la gestion du cache et donnera des exemples de code correspondants.

  1. Installer Flask-Cache

Tout d'abord, nous devons installer l'extension Flask-Cache dans le projet. Il peut être installé via la commande pip. L'exemple de commande est le suivant :

pip install flask-cache
Copier après la connexion
  1. Initialize Flask-Cache

Dans le fichier d'entrée de l'application Flask, nous devons d'abord importer le module Flask-Cache et sélectionner le cache. méthode de stockage selon les besoins, comme suit Affichage :

from flask import Flask
from flask_cache import Cache

app = Flask(__name__)

# 选择缓存的存储方式
cache = Cache(app, config={'CACHE_TYPE': 'simple'})
Copier après la connexion

Dans le code ci-dessus, nous avons choisi le mode simple comme méthode de stockage du cache, qui enregistre les données du cache en mémoire. En plus du mode simple, Flask-Cache propose également d'autres modes de mise en cache, tels que Redis, système de fichiers, etc., qui peuvent être sélectionnés en fonction des besoins réels.

  1. Fonction d'affichage du cache

Après avoir utilisé Flask-Cache, nous pouvons mettre en cache les résultats de la fonction d'affichage via le décorateur @cache.cached. L'exemple est le suivant :

@app.route('/')
@cache.cached(timeout=60)  # 缓存结果60秒
def index():
    # 执行一些耗时的操作,如计算、数据库查询等
    # 返回结果
    return 'Hello, Flask!'
Copier après la connexion

Dans l'exemple ci-dessus, nous avons mis en cache la fonction d'affichage d'index. La période de validité du résultat mis en cache est de 60 secondes, ce qui signifie que la même requête dans les 60 secondes renverra directement le résultat mis en cache sans exécuter le résultat mis en cache. afficher la fonction.

  1. Vider le cache

Si vous devez vider le cache, vous pouvez utiliser le décorateur @cache.clear pour décorer une fonction d'affichage. L'exemple de code est le suivant :

@app.route('/clear_cache')
@cache.clear
def clear_cache():
    return 'Cache cleared!'
Copier après la connexion

Dans l'exemple ci-dessus, lorsque le '/. Le chemin clear_cache est accédé, il sera effacé. Tout mis en cache.

  1. Valeur de clé de cache personnalisée

Par défaut, Flask-Cache utilisera l'URL de la fonction d'affichage comme valeur de clé de cache, mais parfois nous souhaitons personnaliser la valeur de la clé de cache. Vous pouvez utiliser le paramètre make_key du décorateur @cache.cached pour implémenter la fonction de personnalisation de la valeur de la clé de cache. L'exemple de code est le suivant :

@app.route('/user/<username>')
@cache.cached(timeout=60, make_key=lambda view_name, **kwargs: f'user:{kwargs["username"]}')
def user(username):
    # 根据用户名查询用户信息
    # 返回结果
    return f'Hello, {username}!'
Copier après la connexion

Dans l'exemple ci-dessus, nous avons utilisé le paramètre make_key pour personnaliser la clé de cache de l'utilisateur. valeur, sous la forme de 'user :username'. De cette manière, si le même nom d'utilisateur demande la fonction d'affichage pendant la période de validité, le résultat mis en cache sera renvoyé directement.

Résumé

Grâce à l'extension Flask-Cache, nous pouvons facilement implémenter des fonctions de gestion du cache et améliorer la vitesse de réponse de l'application. Cet article explique comment utiliser Flask-Cache pour la gestion du cache et donne des exemples de code correspondants. J'espère que cela vous sera utile dans la gestion du cache lors du développement d'applications Web à l'aide de Flask.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal