Maison  >  Article  >  base de données  >  Comment utiliser Redis pour mettre en cache MySQL

Comment utiliser Redis pour mettre en cache MySQL

(*-*)浩
(*-*)浩original
2019-11-21 11:47:204110parcourir

Dans les projets réels, le serveur de base de données MySQL est parfois situé sur un autre hôte et doit accéder à la base de données via le réseau même si l'application et la base de données MySQL sont sur le même hôte, l'accès à MySQL implique également des opérations d'E/S disque (MySQL) dispose également d'une technologie de pré-lecture des données qui peut réduire la lecture et l'écriture des E/S sur le disque, cette partie sera étudiée plus tard).

Comment utiliser Redis pour mettre en cache MySQL

En bref, lire des données directement depuis MySQL n'est pas aussi efficace que lire des données directement depuis la mémoire. Afin d'améliorer l'efficacité de l'accès aux bases de données, les utilisateurs ont adopté diverses méthodes, dont l'une consiste à utiliser un système de cache basé sur la mémoire placé entre la base de données et l'application. (Apprentissage recommandé : Tutoriel vidéo Redis )

Lorsque vous recherchez des données, regardez d'abord la mémoire. Si elle est trouvée, si elle n'est pas trouvée, alors la base de données est effectivement consultée. Cette méthode peut améliorer l'efficacité globale du système dans certains scénarios (par exemple, rechercher fréquemment les mêmes données).


Utilisez la base de données redis nosql comme cache de la base de données Mysql lors de la recherche, recherchez d'abord le cache redis, et si elle est trouvée, renvoyez le résultat s'il n'est pas trouvé dans redis, puis recherchez ; la base de données Mysql, si la fleur est trouvée, le résultat est renvoyé et redis est mis à jour s'il n'est pas trouvé, vide est renvoyé ;

Pour l'écriture, écrivez directement dans la base de données mysql, et la base de données mysql met automatiquement à jour le contenu modifié vers redis via des déclencheurs et des mécanismes UDF.

Schéma fonctionnel :

Comment utiliser Redis pour mettre en cache MySQL

Étapes de lecture :

1. Le client lit redis, et s'il y a un résultat, s'il n'y a pas d'accès, passez à 2.

2 Le client lit la base de données, et s'il n'est pas trouvé dans la base de données. , il renvoie vide ; s'il est trouvé dans la base de données, il renvoie le résultat trouvé et met à jour Redis.

Étapes d'écriture :

1. Le client modifie/supprime ou ajoute des données à MySQL.

2. Le déclencheur MySQL appelle l'UDF défini par l'utilisateur.

3. UDF met à jour les données modifiées/supprimées ou nouvellement ajoutées à 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!

Déclaration:
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