Django

Caché de Django

Backends de caché, caché por vista, caché de fragmentos de plantilla, API de caché de bajo nivel, invalidación de caché

20 preguntas de entrevista·
Mid-Level
1

¿Cuál es el backend de caché predeterminado en Django si no se especifica ninguna configuración?

Respuesta

Django utiliza de forma predeterminada el backend 'LocMemCache' (caché en memoria local) que almacena los datos en la memoria del proceso Python. Este backend es simple y rápido, pero no persiste entre reinicios del servidor y no comparte datos entre diferentes procesos. Es adecuado para desarrollo, pero no se recomienda para entornos de producción multiproceso.

2

¿Qué decorador se debe usar para almacenar en caché la respuesta completa de una vista durante 15 minutos?

Respuesta

El decorador cache_page de django.views.decorators.cache almacena en caché la respuesta HTTP completa de una vista. El parámetro es el tiempo en segundos (15 minutos = 900 segundos). La clave de caché se genera automáticamente a partir de la URL y los parámetros de la consulta. Este decorador también gestiona los encabezados HTTP apropiados para el almacenamiento en caché.

3

¿Cuál es la sintaxis correcta del template tag para almacenar en caché un fragmento de plantilla durante 5 minutos?

Respuesta

El tag {% cache %} almacena en caché un fragmento de plantilla. La sintaxis es {% cache timeout cache_name %}...{% endcache %}. El primer argumento es el tiempo en segundos (300 para 5 minutos), el segundo es un nombre único para identificar este fragmento. Se pueden añadir argumentos adicionales para variar la caché (por ejemplo, user.id).

4

¿Cómo recuperar un valor de la caché con un valor predeterminado si la clave no existe?

5

¿Qué backend de caché se recomienda para una aplicación Django en producción con múltiples instancias?

+17 preguntas de entrevista

Domina Django para tu próxima entrevista

Accede a todas las preguntas, flashcards, tests técnicos, ejercicios de code review y simuladores de entrevista.

Empieza gratis