recherche

Maison  >  Questions et réponses  >  le corps du texte

Redis 缓存和数据库之间的数据校验该怎么做?

数据库是 MySQL,Redis 主要用来读缓存,现需要检测数据和缓存之间的一致性,确保从缓存读取的数据是最新的。该怎么确保这一点呢?

怪我咯怪我咯2798 Il y a quelques jours742

répondre à tous(3)je répondrai

  • 怪我咯

    怪我咯2017-04-22 08:58:29

    1. Lors de l'instanciation d'un modèle, par exemple lors d'une requête, vous pouvez enregistrer le nombre total d'enregistrements dans la table, l'heure de la dernière modification et d'autres informations dans une méthode du modèle
    2. Lors de l'interrogation de données, combinez les conditions de requête et les informations de la table pour calculer une clé de cache et écrivez-la dans le cache
    3. Lors de l'obtention du cache, combinez les conditions de requête et les informations de la table pour calculer une clé de cache et interroger le cache. Si les données de la table sont modifiées et que le cache ne peut pas être atteint, le dernier résultat sera obtenu et enregistré en tant que nouvelle clé. 🎜>

    Dans le développement réel, le framework MVC est utilisé lors du fonctionnement CUD du modèle, toutes les clés de cache associées au modèle seront automatiquement supprimées pour garantir la cohérence des données.

    Cela nécessite des normes relativement élevées pour l'utilisation du framework, et le cache doit être enregistré conformément aux spécifications de mise en cache du modèle.

    Une application typique à l'heure actuelle est de savoir comment mettre à jour les données mises en cache de la liste après CRUD.

    répondre
    0
  • 怪我咯

    怪我咯2017-04-22 08:58:29

    Vérifiez le cache, sinon, videz les données de la base de données vers le cache.
    S'il y a une mise à jour des données, si la cohérence des données n'est pas très élevée, donnez simplement un ttl aux données dans le cache ; si la cohérence des données est très élevée, videz le cache lors de la mise à jour des données.

    répondre
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-22 08:58:29

    Vous pouvez ajouter un champ à chaque clé pour représenter les informations de version. Mettez à jour le numéro de version des données mises à jour. Utilisez clé + numéro de version lors de l'interrogation de Redis.

    répondre
    0
  • Annulerrépondre