significado police jinja django performance django-templates jinja2

django - police - jinja2 ansible



Plantillas Jinja2 vs django con cargador en caché: ¿cómo se compara el rendimiento? (2)

Tengo curiosidad: con la introducción del cargador de plantillas en caché en django 1.2, ¿cómo se compara el rendimiento con el último Jinja2?

¿Alguien ha intentado ejecutar las pruebas?

Gracias.


Jinja es más pitónico (más flexibilidad) y quizás más rápido que el sistema de plantillas de Django, pero el rendimiento depende especialmente de tu habilidad de desarrollo y de otros parámetros.

Como explica en Jinja Preguntas frecuentes:

http://jinja.pocoo.org/docs/faq/#how-fast-is-it


Esta es una buena pregunta, pero es una dicotomía falsa, ya que puedes usar el cache.Loader de Django y pasarle los Cargadores Jinja para que tengan plantillas Jinja almacenadas en caché.

En segundo lugar, el almacenamiento en caché de plantillas no es solo para la velocidad. Recomendaría un Loader en caché cuando DEBUG = False, para que pueda iterar fácilmente en las plantillas al desarrollarlas, pero para la producción un cargador en caché es importante porque sin el caché sus plantillas pueden no estar sincronizadas con su código durante un período de tiempo medio despliegue.

Por ejemplo, digamos que cambia el contexto de una vista y actualiza la plantilla, y confirma. Ahora si git pull y luego reinicia el servidor, durante el tiempo que transcurre entre el arranque de git y el reinicio, la vista será 500 porque está sirviendo la nueva plantilla con el código de vista anterior. Si obtiene varias solicitudes por segundo, eso dará como resultado 500 de producción, a menos que su método de implementación de producción evite esto al usar múltiples directorios.