Il existe quatre méthodes pour supprimer le cache dans Redis : suppression directe (commande DEL), suppression par lots (commande KEYS + UNLINK), suppression floue (commande SCAN + UNLINK) et expiration basée sur le temps (TTL).
Comment supprimer le cache dans Redis
Supprimer directement
Utilisez la commandeDEL
pour supprimer directement le cache de la clé spécifiée.DEL
命令直接删除指定键的缓存。
DEL key_name
批量删除
使用KEYS
命令获取匹配特定模式的键,然后使用UNLINK
命令批量删除这些键。
例如:删除所有以product_*
开头的键:
KEYS product_* UNLINK $(keyspace_keys ...)
模糊删除
使用SCAN
命令迭代所有键,并使用 Python 等脚本语言中的fnmatch
模块来匹配键。匹配的键可以用UNLINK
命令删除。
例如:删除所有包含字符串user_ID
的键:
import redis import fnmatch r = redis.Redis() for key in r.scan_iter(): if fnmatch.fnmatch(key, "*user_ID*"): r.unlink(key)
基于时间到期 (TTL)
如果为键设置了 TTL,键将在到期时自动删除。
例如:设置键user_info
EXPIRE user_info 600
Utilisez la commandeKEYS
pour obtenir les clés correspondant à un modèle spécifique, puis utilisez la commandeUNLINK
pour supprimer ces clés par lots.
product_*
:SCAN
pour parcourir toutes les clés et utiliser un script tel que Python Le module
fnmatch
dans le langage pour faire correspondre les clés. Les clés correspondantes peuvent être supprimées à l'aide de la commande
UNLINK
. Exemple : Supprimez toutes les clés contenant la chaîne
user_ID
: rrreeeExpiration basée sur le temps (TTL) Si la durée de vie est définie pour une clé, la clé expirera automatiquement lorsqu'elle expire supprimer. Par exemple : Réglez le TTL de la clé
user_info
à 10 minutes : rrreeeNotesFaites attention à la sécurité lors de la suppression du cache, car cela peut entraîner une perte de données . Utilisez la suppression floue avec prudence car elle peut supprimer d'autres clés par erreur. Effacez régulièrement les caches qui ne sont plus nécessaires pour optimiser les performances de Redis.
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!