Code source Golang : analyse unique (1)

1. Qu'est-ce que la panne du cache

       La panne du cache signifie qu'une certaine clé est très chaude, accédée très fréquemment et se trouve dans une situation d'accès centralisé à haute simultanéité. Lorsque la clé devient invalide, un grand nombre de requêtes traversent le cache et demandent directement la base de données, tout comme creuser un trou dans une barrière.
       Méthode 1 : Simple et impoli : laissez directement les données du point d'accès n'expirer jamais et actualisez simplement les données régulièrement avec des tâches planifiées
       Méthode 2 : Afin d'éviter la panne du cache, nous pouvons ajouter un verrou mutex à la première requête pour interroger la base de données, et le reste des requêtes de requête sera bloqué jusqu'à ce que le verrou soit libéré. ​​Une fois que le thread est entré et a découvert qu'il existe déjà un cache, il ira directement au cache pour protéger la base de données. Mais aussi parce que cela bloquera d'autres threads, le débit du système chutera à ce moment-là. Il est nécessaire d'examiner s'il convient de le faire en combinaison avec l'activité réelle.
       Méthode 3 : C'est l'idée de conception du vol unique, et des mutex seront également utilisés, mais par rapport à la méthode 2, la granularité de verrouillage sera plus fine.

Simulation de panne de cache secondaire


package main

import (
	

Guess you like

Origin blog.csdn.net/whq19890827/article/details/127503691