La página principal no se carga con contenido en Adobe Experience Manager
AEM as a Cloud Service muestra intermitentemente una página principal en blanco, lo que interrumpe la experiencia del usuario y activa falsas alertas de tiempo de inactividad. El almacenamiento en caché prematuro, los servicios no inicializados o los errores de procesamiento suelen causar este problema. Este artículo explica cómo corregirlo ajustando las reglas de caché, revisando el comportamiento de calentamiento y añadiendo comprobaciones de estado para componentes personalizados para garantizar una entrega de contenido fiable.
Descripción description
Entorno
Este problema afecta a Adobe Experience Manager (AEM) as a Cloud Service - Sites, específicamente en el entorno de producción.
Problema/Síntomas
La página principal se carga intermitentemente sin contenido y sirve como página vacía. Las herramientas de monitorización generan varias alertas que indican un tiempo de inactividad en la página principal. Aunque el problema se resuelve solo en 10-20 minutos, se repite con frecuencia. Durante estos períodos, el análisis muestra discrepancias en el tamaño de página y el sistema proporciona versiones en caché de la página vacía.
Resolución resolution
Siga estos pasos para resolver este problema:
-
Configure las reglas de invalidación de caché adecuadas para evitar que se proporcione contenido obsoleto o incoherente. Incluya
localhosto127.0.0.1comoServerAliasen la configuración del host virtual para la invalidación de Dispatcher. Para obtener más información, consulte Explicación del almacenamiento en caché de Dispatcher y Páginas en caché invalidadas de AEM. -
Deshabilite temporalmente el servicio de calentamiento si envía solicitudes antes de que se inicialicen todos los servicios, lo que puede hacer que se almacenen en caché páginas incompletas.
-
Actualice a la última versión de AEM para aplicar correcciones de errores que solucionen problemas en los que los errores de procesamiento dan como resultado valores nulos en caché.
-
Revise y actualice los modelos Sling en la base de código (para obtener más información, consulte Crear un modelo Sling para el componente):
- Solo marque las inyecciones como opcionales cuando sea necesario.
- Gestione explícitamente valores nulos en el código para evitar excepciones de tiempo de ejecución durante la inicialización.
-
Implemente comprobaciones de estado de OSGi para los componentes personalizados críticos a fin de asegurarse de que se inicializan antes de servir tráfico:
code language-none { "hc.name": "Required Custom Components", "hc.tags": [ "systemalive", "systemready"] , "components.list": [ "com.example.core.services.impl.RenditionServiceImpl"] }Pruebe esta configuración localmente accediendo a
/system/console/healthcheck?tags=systemreadyy confirmando que todos los componentes enumerados devuelven un estado OK. Para obtener más información, consulte Configuración de OSGi para AEM as a Cloud Service. -
Revise los registros de pod durante el inicio para identificar las excepciones relacionadas con errores de procesamiento o servicios no inicializados (por ejemplo,
NullPointerException). Solucione estos problemas asegurándose de que la inyección y la inicialización de dependencias sean adecuadas. -
Pruebe todos los cambios en los entornos de ensayo antes de implementarlos en producción para reducir el riesgo de tiempo de inactividad o problemas de almacenamiento en caché.
Estos pasos le ayudan a evitar interrupciones recurrentes en la página principal y garantizan una entrega de contenido coherente al abordar causas raíz como errores de inicialización de servicios y configuraciones incorrectas de almacenamiento en caché.