Preguntas frecuentes de caché Redis

Redis penetración de caché (datos no encontrados)

用户查询一个数据,缓存中没有,数据库中也没有。这样频繁的访问数据库导致数据库宕机。

Solución:
1. Solicitud para agregar un filtro: Filtro
Bloom: todos los parámetros de consulta posibles se almacenan en forma de hash, y la capa de control se verifica primero. Si no coincide, se descarta. Esto evita la presión de la base de datos.

Filtro de floración

2. Caché de objetos vacíos Si la
consulta está vacía, se guarda un objeto vacío en el caché.

Hay un problema: la
memoria caché necesita más espacio para guardar objetos vacíos
. El tiempo de caducidad se establece para el valor nulo, o habrá inconsistencia entre los datos en la capa de memoria caché y la capa de almacenamiento

Desglose del caché de Redis (demasiado acceso a una clave, el caché caduca)

一个key访问量巨大,突然过期失效导致大量请求访问数据库。

Soluciones:
1. Los datos del punto de acceso nunca caducan
2. Bloqueos distribuidos (asegúrese de que solo un subproceso consulte los servicios de fondo y otros subprocesos solo puedan esperar sin el permiso para obtener bloqueos distribuidos)

Redis avalancha de caché (concentración de caché caducada)

在某个时间段,缓存集中过期失效。(Redis宕机)

Solución:
1. clúster redis
2. degradación del límite actual (bloqueo o cola para controlar el número de subprocesos que acceden a la base de datos)
3. calentamiento de datos (cargar datos en redis antes de usar)
4. hacer un caché secundario, A1 es el caché original, A2 es el caché de copia. Cuando A1 falla, puede acceder a A2. El tiempo de caducidad de la caché A1 se establece a corto plazo, A2 se establece a largo plazo
5. Diferentes teclas, establezca diferentes tiempos de caducidad, de modo que el tiempo de invalidación de caché sea lo más uniforme posible.

193 artículos originales publicados · Me gusta 13 · Visitantes más de 40,000

Supongo que te gusta

Origin blog.csdn.net/u013919153/article/details/105616155
Recomendado
Clasificación