Maison > base de données > Redis > Qu'est-ce que le mode de requête lente et d'abonnement dans Redis

Qu'est-ce que le mode de requête lente et d'abonnement dans Redis

青灯夜游
Libérer: 2021-11-15 10:50:57
avant
1558 Les gens l'ont consulté

Cet article vous présentera le mode de requête lente et d'abonnement dans Redis. J'espère qu'il sera utile à tout le monde !

Qu'est-ce que le mode de requête lente et d'abonnement dans Redis

Requête lente

Le journal des requêtes lentes est le temps d'exécution de chaque commande lorsque le système exécute la commande. Lorsqu'il dépasse le seuil, la commande sera enregistrée. [Recommandations associées : Tutoriel vidéo Redis]

Processus d'exécution des commandes Redis

Quest-ce que le mode de requête lente et dabonnement dans Redis

  • Envoyer la commande

  • Mise en file d'attente des commandes

  • Exécution de la commande

  • Retour des résultats

Parmi L'exécution de la commande est le temps nécessaire aux statistiques de requête lentes

Requête lente deux paramètres de configuration

  • slowlog-log-slower-than : seuil prédéfini, l'unité est en millisecondes, si une commande "très lente" est exécutée, si le le temps d'exécution dépasse le seuil, il sera enregistré

  • slowlog-max-len : définissez le nombre maximum de journaux de requêtes lentes à stocker

Mode de publication et d'abonnement

Redis fournit une fonction de publication et d'abonnement, qui peut être utilisé pour les messages. Le mécanisme de transmission, de publication et d'abonnement Redis se compose de trois parties : éditeur, abonné et canal.

Quest-ce que le mode de requête lente et dabonnement dans Redis

Fonction de publication et d'abonnement

  • Envoyer des messages en utilisant la commande de publication

Quest-ce que le mode de requête lente et dabonnement dans Redis

  • Abonnez-vous à une chaîne à l'aide de la commande d'abonnement matching : abonnez-vous à plusieurs chaînes sur en même temps, la commande est PSUBSCRIBE

Quest-ce que le mode de requête lente et dabonnement dans Redis

  • Redis traitement du délai d'expiration

Quest-ce que le mode de requête lente et dabonnement dans Redis

traitement actif

traitement de synchronisation, créez une minuterie lors du réglage du délai d'expiration et effectuez l'opération de suppression immédiatement lorsque le Le délai d'expiration est écoulé. Cette opération est immédiate. Quel que soit le nombre de clés expirées au cours de cette période ou l'état d'exécution du serveur, elles seront supprimées, ce qui n'est pas très convivial pour le processeur.
  • Suppression régulière. La suppression régulière consiste à définir un intervalle de temps. Chaque période de temps détectera s'il y a des clés expirées, supprimez-les

  • Traitement passif

Lorsque la clé expirée est à nouveau accessible, Il sera jugé si la clé a expiré. Si elle a expiré, elle sera supprimée et NIL sera renvoyé. Cette méthode de traitement est conviviale pour le CPU et n'occupera pas le CPU pour d'autres clés expirées, mais elle n'est pas conviviale pour le processeur. la mémoire. Une clé a expiré, mais elle ne sera pas supprimée avant d'être utilisée, et elle occupe toujours de l'espace mémoire. S'il y a un grand nombre de clés expirées qui n'ont pas été utilisées à nouveau, beaucoup d'espace mémoire sera utilisé. être gaspillé.

    3. Traitement RDB et AOF des clés expirées
  • Si vous exécutez la commande save ou bgsave pour créer un RDB, le programme vérifiera les clés dans la base de données et les clés expirées ne seront pas enregistrées dans le fichier RDB nouvellement créé. . milieu.

  • Lorsque la clé expirée est supprimée paresseusement ou supprimée périodiquement, le programme ajoutera une commande DEL au fichier AOF pour enregistrer explicitement que la clé a été supprimée.

Pendant le processus de réécriture AOF, le programme vérifiera les clés dans la base de données et les clés expirées ne seront pas enregistrées dans le fichier AOF réécrit.

Recyclage de la mémoire

noeviction : la politique par défaut ne supprimera aucune donnée, rejettera toutes les opérations d'écriture et renverra les messages d'erreur du client. Pour le moment, Redis ne répond qu'aux opérations de lecture.

volatitle-rlu : Supprimez les clés avec des attributs de délai d'attente définis selon l'algorithme LRU jusqu'à ce que suffisamment d'espace soit libéré. S’il n’y a aucun objet clé supprimable, revenez à la stratégie de non-expulsion.

allkeys-lru : supprimez les clés selon l'algorithme LRU, que les données aient ou non un attribut de délai d'attente, jusqu'à ce que suffisamment d'espace soit libéré. allkeys-random : supprimez aléatoirement toutes les clés jusqu'à ce que suffisamment d'espace soit libéré.

volatitle-random : supprimez aléatoirement les clés expirées jusqu'à ce que suffisamment d'espace soit libéré.

volatitle-ttl : supprimez les données récemment expirées en fonction de l'attribut ttl de l'objet clé-valeur. Sinon, revenez à la stratégie de non-éviction

Pour plus de connaissances sur la programmation, veuillez visiter :

Introduction à la programmation

 ! !

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