Caché JSON progresiva

POM Cache dispone de una caché dedicada para los lotes JSON que utilizan los POM Theme archivos progresivos. Es independiente de la caché HTML estática: puedes activar, inspeccionar o vaciar cualquiera de los dos almacenes sin hacer lo mismo con el otro.

Este capítulo está dirigido a propietarios de sitios que utilizan la carga progresiva de archivos y a los equipos técnicos responsables del servidor de origen. Explica el recorrido completo desde la primera respuesta dinámica hasta la posterior entrega estática.

Qué acelera la caché JSON

Un archivo progresivo representa inicialmente una estructura HTML de la página y luego solicita elementos adicionales a medida que el visitante se desplaza o selecciona Load more. POM Theme expone esos lotes como URL JSON públicas, normalmente bajo:

/pom-json/archive/...

La respuesta contiene los elementos del archivo ya representados y la información que el navegador necesita para solicitar el siguiente lote. Sin un archivo en caché, WordPress debe resolver el contexto del archivo, consultar sus entradas, representar las plantillas de los elementos y codificar la respuesta en cada solicitud. POM Cache puede guardar una respuesta apta una vez y reutilizarla.

Este subsistema no convierte cada respuesta REST de WordPress en un archivo estático. Solo participa en el flujo compatible de archivos progresivos.

Los cuatro controles de tiempo de ejecución

Abre Settings → POM Cache → General y busca Progressive JSON runtime. En multisitio, usa Network Admin → Settings → POM Cache → General.

Los cuatro interruptores tienen funciones deliberadamente separadas:

Control Qué gobierna Predeterminado
Progressive JSON cache Interruptor maestro para las lecturas, escrituras, entrega anticipada e invalidación automática opcional del JSON de POM Cache Desactivado
PHP early static serving Si advanced-cache.php puede devolver un archivo existente antes de que WordPress termine de cargarse Activado
WordPress read fallback Si el enrutador POM Theme puede reutilizar un archivo existente después de que WordPress se haya cargado Activado
JSON writes Si una respuesta recién generada y cacheable puede almacenarse Activado

Los interruptores secundarios no hacen nada mientras Progressive JSON cache esté desactivado. Tras activar el interruptor maestro, mantener los tres controles secundarios activados ofrece el comportamiento normal en capas: escribir en la primera solicitud apta, servir de forma anticipada cuando sea posible y conservar una alternativa de WordPress.

El interruptor maestro de JSON no está vinculado a Caching, el interruptor maestro de HTML estático. Esto resulta útil cuando el JSON progresivo es beneficioso aunque el HTML esté cacheado en otro lugar.

Elige la capa de entrega

POM Cache puede utilizar tres rutas de entrega progresivamente más tardías:

  1. La entrega directa de Apache puede devolver el archivo antes de que comience PHP, cuando hayas instalado las reglas generadas opcionales.
  2. PHP early static serving puede devolver el archivo desde el drop-in de caché antes de que se complete la solicitud normal de WordPress.
  3. WordPress read fallback permite que el enrutador del tema compatible lea el mismo archivo cuando ninguna de las rutas anteriores lo ha servido.

Gana el primer acierto válido disponible. Un fallo continúa a la siguiente capa y finalmente llega a la generación dinámica. Lee How a JSON cache request is served antes de decidir qué capas debe usar tu entorno de alojamiento.

Configura la frescura por separado

La sección de tiempo de ejecución también contiene tres interruptores de invalidación opcionales:

  • Purge JSON on post changes
  • Purge JSON on term changes
  • Purge JSON on translation changes

Los tres están Disabled de forma predeterminada. Cuando se activan, cada evento relevante elimina el árbol JSON progresivo completo del sitio actual. Esta invalidación amplia favorece la exactitud porque una entrada, término o traducción puede aparecer en muchos contextos de archivo.

La cabecera HTTP JSON Cache-Control header es un tipo diferente de control de frescura. Indica a los navegadores y a las cachés compartidas cómo reutilizar una respuesta; no caduca el archivo en disco. POM Cache no tiene un recolector de basura JSON basado en la antigüedad.

Comienza con estas guías en orden:

  1. Why cache progressive archive JSON
  2. Enable the progressive JSON cache
  3. How JSON cache entries are generated
  4. How a JSON cache request is served
  5. Understand JSON cache response headers
  6. Clear the JSON cache manually

Después usa la guía de entrega correspondiente a tu pila:

Para el funcionamiento continuo:

Línea de base segura para producción

Para un despliegue convencional de Apache o PHP, un primer lanzamiento prudente es:

  1. Deja las reglas opcionales de Apache fuera de la primera prueba;
  2. Activa el interruptor maestro, el servido anticipado de PHP, la alternativa de WordPress y las escrituras;
  3. Deja el tamaño máximo en 1048576 bytes a menos que una respuesta real sea mayor;
  4. Mantén la política corta predeterminada de Cache-Control;
  5. Activa los interruptores de invalidación que coincidan con el contenido que editas;
  6. Solicita un lote progresivo dos veces y verifica la generación seguida de un acierto;
  7. Añade la entrega directa de Apache solo después de que la ruta PHP funcione;
  8. Coordina la limpieza del origen con cualquier CDN que almacene en caché las URL JSON.

Esta secuencia proporciona una alternativa observable mientras validas la caché. También mantiene independientes las decisiones de HTML y JSON.

Cómo es el éxito

Una caché JSON saludable tiene estas características:

  • una primera solicitud apta se genera dinámicamente y crea un archivo .json válido;
  • una solicitud limpia repetida reutiliza ese archivo;
  • las solicitudes autenticadas o de sesión de comercio no son servidas por las rutas estáticas anticipadas;
  • las ediciones limpian el JSON del sitio actual cuando el interruptor de purga correspondiente está activado;
  • Progressive JSON Cache Contents informa de un recuento de archivos y un tamaño plausibles;
  • una limpieza manual del JSON deja sin cambios el recuento de HTML estático;
  • los visitantes reciben contenido actual tanto del origen como de cualquier CDN.

Si una solicitud repetida sigue siendo dinámica, consulta la guía de solución de problemas en lugar de aumentar la duración de la caché o añadir reglas amplias en el servidor.