Diferencia entre las opciones de caché estándar

12

Joomla! tener 3 formas diferentes de almacenamiento en caché:

  • "Almacenamiento en caché conservador" (en configuración global)
  • "Caché progresivo" (en configuración global)
  • Plugin "Sistema - Caché"

Tengo las siguientes preguntas:

  • ¿Cuáles son las diferencias?
  • ¿Cuándo uso qué opción?
  • ¿Debo habilitar el complemento de caché cuando ya activé la opción en la configuración?
  • ¿Qué forma correcta de configurar el sistema de caché predeterminado?
Fedik
fuente

Respuestas:

5

Además de la respuesta de Shyam ...

En Global Configuration-> Cache...

  • El almacenamiento en caché conservador es un caché generado para cada vista de un componente / módulo
  • El almacenamiento en caché progresivo es un caché generado para cada vista de un componente / módulo individualmente por usuario

Este es un caché de vistas de nivel de extensión. Debe ser implementado por el desarrollador de la extensión para que tenga algún efecto.

Nota: los usuarios registrados nunca verán contenido en caché por estos medios.

Puede anular el almacenamiento en caché de módulos individuales si la opción 'Almacenamiento en caché conservador' está habilitada deshabilitando el almacenamiento en caché en las opciones avanzadas del módulo. NO PUEDE anular el almacenamiento en caché del módulo por módulo si se establece 'Almacenamiento progresivo en caché'.

El complemento Sistema - Caché genera cachés de página de cada página completa /cache.

Para la mayoría de los escenarios, habilitar el complemento Sistema - Caché es suficiente. Si solo desea almacenar en caché módulos / componentes particulares (que tienen implementado el almacenamiento en caché), deshabilite el complemento y habilite el almacenamiento en caché conservador en la configuración global. Luego puede establecer excepciones deshabilitando el almacenamiento en caché en las opciones avanzadas de un módulo.

Tenga en cuenta que cualquier almacenamiento en caché es un equilibrio entre el tiempo y el espacio: el almacenamiento en caché de la página completa reducirá la carga de la base de datos y, por lo tanto, los tiempos de carga de la página, pero aumentará el uso del espacio en disco.

Puede encontrar más análisis y puntos de referencia del sistema de almacenamiento en caché aquí , así como los documentos de Joomla Cache para administradores y este excelente artículo que detalla las diversas opciones y advertencias aplicables.

codinghands
fuente
Pero uso el caché progresivo y respeta la configuración del caché del módulo, por lo que creo que deberías intentarlo y corregir tu respuesta.
jackJoe
¿Estás seguro? Todos los sitios que he revisado estados Progressive cachinganularán cualquier configuración de nivel de módulo (particularmente la tercera tabla en 'Resultados sin procesar' en inmotionhosting.com/support/edu/joomla-25/caching/… ). Intentaré probar esto en una instalación limpia hoy para verificar de una forma u otra.
codinghands
1
sobre: ​​"El almacenamiento en caché conservador más la habilitación del sistema: el complemento de caché es suficiente", ¿tiene esto sentido? porque como explicaste: el complemento hace caché para toda la página, así que (según tengo entendido) en este caso Joomla! no ejecuta una extensión y por lo tanto el almacenamiento en caché conservador ... o entiendo que algo anda mal?
Fedik
1
¡Acabo de probarlo y en algunas situaciones funciona y en otras no! si incluye el módulo en un artículo (por ejemplo, por su posición), respeta la configuración sin caché, pero en una posición normal del módulo lo ignora. Juraría que funcionó para un módulo normal, pero lo intenté nuevamente y no funciona.
jackJoe
@Fedik Tienes toda la razón, un malentendido de mi parte. Ahora actualicé mi respuesta.
codinghands
3
  1. Diferencia entre el almacenamiento en caché

    El almacenamiento en caché conservador es el tipo estándar de almacenamiento en caché. Así es como funciona:

    Un visitante visita una página en su sitio web.

    • Joomla comprueba si hay una versión no caducada de esa página en su directorio de caché.
    • Si la página en caché existe (y no ha caducado), Joomla la servirá al visitante
    • de lo contrario, se crea una versión en caché de la página, y esa versión en caché se servirá al visitante y a cualquier otro visitante consecuente, siempre y cuando (por "eso" nos referimos a la página) no haya caducado.

    El escenario anterior es típico y es cómo la mayoría de los desarrolladores implementan el almacenamiento en caché.

    El almacenamiento en caché progresivo funciona de la siguiente manera:

    • Un visitante visita una página en su sitio web.
    • Joomla comprueba si existe una versión en caché de esa página para ese visitante y aún no ha caducado.
    • Si esa página en caché existe, se le servirá al visitante; de ​​lo contrario, Joomla creará la página en caché para ese visitante específico y luego se la entregará a él.
    • Si otro visitante (que nunca ha estado en esa página) visita esa página, entonces Joomla no servirá la página en caché del visitante anterior, en su lugar, creará una versión en caché de esa página específicamente para ese usuario, y luego la enviará a él.

    Como puede ver, el almacenamiento en caché progresivo solo ofrece una mejora de rendimiento

    • si el mismo visitante visita la misma página durante la vida útil de la versión en caché de la página.
    • En la mayoría de los escenarios, el almacenamiento en caché progresivo resulta en un gran impacto en el rendimiento que es mucho peor que deshabilitar el caché, simplemente porque para casi cada visita, Joomla tiene que procesar la solicitud, crear la versión en caché de la página y luego entregar la página al visitante (en lugar de simplemente procesar la solicitud y servir la página en el escenario donde la memoria caché está deshabilitada).
    • Ah, y no se olvide de todos los archivos de caché generados por Joomla: solo puede imaginar cuántos de estos archivos tendrá en su carpeta de caché si tiene un sitio web de noticias de alto tráfico (que tiene muchas páginas).

    Ahora puede preguntarse, ¿en qué circunstancias es útil el almacenamiento en caché progresivo? Bueno, imagina que tienes un sitio web de videos (similar a YouTube). Desea mostrar a cada visitante páginas personalizadas en función de su ubicación y / o configuración del navegador y / o complementos instalados. Entonces, para cada página que cargan los visitantes, usted usa esta información para generar una versión personalizada de esa página y la almacena en caché. Si el visitante visita esa misma página nuevamente, entonces Joomla no necesita rehacer el trabajo para generar la página personalizada.

    Por supuesto, hay muchos escenarios en los que el almacenamiento en caché progresivo es realmente útil, pero en nuestra opinión, el almacenamiento en caché progresivo solo debe considerarse si el sitio web recibe muchos visitantes y si esos visitantes son en su mayoría visitantes repetidos. Usarlo en otros casos causará un impacto significativo en el rendimiento del sitio web. Ref: Leer Joomla Caching en profundidad

  2. Se recomienda conservador.

  3. El complemento de caché proporciona caché de página completa cuando está habilitado.
Shyam
fuente
3
¿Podría editar esta respuesta para que los bloques preformateados sean, en cambio, comillas de bloque? Además, tenga en cuenta la fuente original de esta información ( itoctopus.com/… y citada en stackoverflow.com/questions/12739297/… ). Además, ¿recomienda el almacenamiento en caché progresivo a pesar de que esto se menciona en el artículo como solo para casos de uso muy específicos ...?
codinghands
no está muy claro, usted dijo que: Conservador / Progresivo "comprueba si existe una versión en caché de esa página" y sobre el complemento "El complemento de caché proporciona caché de página completa".
Fedik
ok, veo otra respuesta;)
Fedik
Respuesta actualizada # 2 Cambiado a conservador.
Shyam