2011-10-06 54 views
14

He instalado django-redis-cache y redis-py. He seguido los documentos de almacenamiento en caché para Django. Por lo que sé, la configuración a continuación es todo lo que necesito. Pero ¿cómo puedo saber si funciona correctamente?¿Cómo puedo probar si mi redis cache está funcionando?

settings.py

CACHES = { 
     'default': { 
      'BACKEND': 'redis_cache.RedisCache', 
      'LOCATION': '<host>:<port>', 
      'OPTIONS': { 
       'DB': mydb, 
       'PASSWORD': 'mydbspasswd', 
       'PARSER_CLASS': 'redis.connection.HiredisParser' 
      }, 
     }, 
    } 

...

MIDDLEWARE_CLASSES = (
     'django.middleware.cache.UpdateCacheMiddleware', 
     ...[the rest of my middleware]... 
     'django.middleware.cache.FetchFromCacheMiddleware', 
    ) 

    CACHE_MIDDLEWARE_ALIAS = 'default' 
    CACHE_MIDDLEWARE_SECONDS = (60 * 60) 
    CACHE_MIDDLEWARE_KEY_PREFIX = '' 
+2

¿Qué estás pidiendo que no puedas averiguar al testarlo? –

+1

¿Cómo puedo probar y decir si funcionó? Soy un newb caché total! –

+1

Acabo de cambiar la redacción de mi pregunta. ¡Supongo que realmente hace que sea una pregunta diferente, pero que articula mejor lo que necesito para resolver esto! –

Respuesta

39

no funcionó con Django todavía, pero mi método por defecto para comprobar si algún componente en realidad escribe a Redis durante el desarrollo:

Primero, purgo todas las claves almacenadas en redis para eliminar las antiguas entradas de caché (nunca lo haga en producción ya que esto elimina todos los datos de redis):

> redis-cli FLUSHALL 

luego activar el almacenamiento en caché en mi solicitud, y ver lo que hace Redis:

> redis-cli MONITOR 

debe introducir una sesión interactiva en la que se ve todos los comandos enviados a Redis.

Recargue su página y en su terminal debería ver algunas operaciones SET * que almacenan los datos de la memoria caché.

Vuelva a cargar y si su caché funciona, debería ver algunas operaciones GET * recuperando los datos en caché.

Nota: con este método puede verificar si realmente se usa su caché. Lo que no puede ver es si su caché ayuda a acelerar su aplicación. Para eso tienes que hacer pruebas de rendimiento como se sugiere en los comentarios.

+0

Cool @Max. Se escucha perfecto. Lo verificará. ¡Definitivamente regresaré y lo verificaré cuando confirme! –

7

Puede instalar django-debug-toolbar y ver si el número de consultas disminuye cuando habilita el almacenamiento en caché. Aunque no creo que esta sea la mejor solución para la pregunta planteada, sigo pensando que quieres hacerlo, ya que puedes identificar fácilmente las consultas costosas usando esta configuración y luego agregar el almacenamiento en caché apropiado.

Cuestiones relacionadas