Maison > base de données > Redis > Comment utiliser la suppression paresseuse Lazy free dans Redis

Comment utiliser la suppression paresseuse Lazy free dans Redis

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Libérer: 2023-05-26 23:37:04
avant
1976 Les gens l'ont consulté

Utiliser la suppression paresseuse Lazy free

Lorsque la clé expire ou que la commande DEL delete est utilisée, Redis supprimera non seulement l'objet de la table de hachage globale, mais libérera également la mémoire allouée par l'objet. Lorsqu'une grosse clé est rencontrée, libérer de la mémoire entraînera le blocage du thread principal.

À cette fin, Redis 4.0 a introduit la commande UNLINK, qui place l'opération de libération de la mémoire objet dans le thread d'arrière-plan bio pour exécution. Cela réduit efficacement le blocage du thread principal.

Redis 6.0 va encore plus loin et introduit des configurations associées sans paresseux. Lorsque la configuration est activée, l'opération « libérer l'objet » sera « exécutée de manière asynchrone » dans le cadre de l'expiration de la clé et des commandes DEL.

void delCommand(client *c) {
    delGenericCommand(c,server.lazyfree_lazy_user_del);}void delGenericCommand(client *c, int lazy) {
    int numdel = 0, j;

    for (j = 1; j < c->argc; j++) {
        expireIfNeeded(c->db,c->argv[j]);
        // 开启 lazy free 则使用异步删除
        int deleted = lazy ? dbAsyncDelete(c->db,c->argv[j]) :
                              dbSyncDelete(c->db,c->argv[j]);
        ...
    }}
Copier après la connexion

Il est recommandé de mettre à niveau vers au moins Redis 6 et d'activer Lazy-free.

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:
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