Árbol de rendimiento

Ámbito

El diagrama siguiente pretende proporcionar instrucciones sobre los pasos que se deben seguir para solucionar los problemas de rendimiento. Se divide en 5 secciones para facilitar la lectura.

Cada paso del diagrama está vinculado a un recurso de documentación o a una recomendación.

Requisitos previos y supuestos

Se supone que un problema de rendimiento se observa en una página determinada (ya sea una consola AEM o una página web) y se puede reproducir de forma coherente. Antes de iniciar la investigación, es necesario disponer de una forma de probar o supervisar el rendimiento.

El análisis comienza en el paso 0. El objetivo es determinar qué entidad (Dispatcher, host externo o AEM) es responsable del problema de rendimiento y luego determinar qué área (servidor o red) debe investigarse.

Sección 1

chlimage_1-103

Sección 2

chlimage_1-104

Sección 3

chlimage_1-105

Sección 4

chlimage_1-106

Sección 5

chlimage_1-107

Etapa Título Medios
Etapa 0 Analizar el flujo de solicitud

Se puede utilizar el análisis de solicitud HTTP estándar en el navegador para analizar el flujo de solicitudes. Para obtener más información sobre cómo hacer esto en Chrome, consulte:

https://developers.google.com/web/tools/chrome-devtools/profile/network-performance/resource-loading
https://developers.google.com/web/tools/chrome-devtools/profile/network-performance/understanding-resource-timing

Etapa 2 ¿Las solicitudes proceden de hosts externos? Se puede utilizar el análisis de solicitud HTTP estándar en el navegador para analizar el flujo de solicitudes. Consulte los vínculos anteriores sobre cómo hacerlo en Chrome.
Etapa 3 ¿Se pueden almacenar en caché las solicitudes? Para obtener más información sobre las solicitudes almacenables en caché y los consejos generales de optimización del rendimiento de Dispatcher, consulte Optimización del rendimiento de Dispatcher.
Etapa 4 ¿Las solicitudes provienen de Dispatcher?

Marque la Documentación de depuración de Dispatcher para ver si las solicitudes se almacenan en la caché correctamente.

Etapa 5 ¿Dispatcher está intentando autenticar cada solicitud a través de AEM? Compruebe si el despachante envía HEAD solicitudes a AEM para autenticación antes de enviar el recurso almacenado en caché. Para ello, busque HEAD solicitudes en la AEM access.log. Para obtener más información, consulte Registro.
Etapa 6 ¿La ubicación geográfica de Dispatcher está lejos de los usuarios? Acerque Dispatcher a los usuarios.
Etapa 7 ¿Está bien la capa de red de Dispatcher?
Investigue la capa de red para detectar problemas de saturación y latencia.

Etapa 8 ¿La lentitud se puede reproducir con una instancia local?

Uso Día duro para replicar las condiciones del "mundo real" desde las instancias de producción. Si esto no es realista para la pendiente del desarrollo, asegúrese de probar la instancia de producción (o una instancia de ensayo idéntica) en un contexto de red diferente.

Etapa 9 ¿La ubicación geográfica del servidor está lejos de los usuarios? Acerque el servidor a los usuarios.
Pasos 10 y 29 Investigar capa de red

Investigue la capa de red para detectar problemas de saturación y latencia.

Para el nivel de creación, se recomienda que la latencia no supere los 100 milisegundos.

Para obtener más información sobre sugerencias de optimización del rendimiento, consulte esta página.

Etapa 11 Acercar el servidor o agregar uno por región
Etapa 12 Resolución de problemas del servidor AEM Consulte los siguientes subpasos del diagrama para obtener más información.
Etapa 13 Comprobar los requisitos de hardware Consulte la documentación en Pautas para el tamaño del hardware.
Etapa 14 Compruebe las causas frecuentes de los problemas de rendimiento
Etapa 15 Buscar solicitudes lentas

Puede comprobar la existencia de solicitudes lentas analizando la variable request.log o utilizando rlog.jar.

Para obtener más información sobre el uso de rlog.jar, consulte esta página.

Consulte Uso de rlog.jar para encontrar solicitudes con largos tiempos de duración.

Etapa 16 Servidor de perfiles

Para obtener información sobre las herramientas de creación de perfiles que puede utilizar con AEM, consulte Herramientas para monitorizar y analizar el rendimiento.

Etapa 17 Buscar métodos lentos en la creación de perfiles
Etapa 18 Situaciones comunes de creación de perfiles Consulte Análisis de escenarios específicos en la sección Optimización del rendimiento .
Etapa 19 CPU del 100% https://helpx.adobe.com/es/experience-manager/6-3/sites-deploying/monitoring-and-maintaining.html#MonitoringPerformance
Etapa 20 Memoria insuficiente
  1. Memoria insuficiente
  2. Mi aplicación genera errores de memoria insuficiente
  3. Analizar problemas de memoria en Helpx.
Etapa 21 E/S de disco

Consulte la E/S de disco en la documentación de Monitoreo y Mantenimiento.

Pasos 22 y 22.1 Relación de caché Consulte Cálculo de la proporción de caché de Dispatcher.

Etapa 23 Consultas lentas Prácticas recomendadas para consultas e indexación
Etapa 24 Ajuste del repositorio
Etapa 25 Flujos de trabajo en ejecución

Etapa 26 Infraestructura de MSM

Prácticas recomendadas del administrador de varios sitios

Etapa 27 Ajuste de recursos
  1. Servicio de sincronización de recursos
  2. Varias instancias de DAM
  3. Artículos sobre consejos de rendimiento here y here.
Etapa 28 Sesiones no cerradas

Comprobación de sesiones JCR no cerradas

Etapa 30 Acerque el despachante (añada uno por "región"?)
Etapa 31 Usar CDN delante de Dispatcher Utilizar Dispatcher con una CDN
Etapa 32 Utilice la administración de sesiones en el nivel de Dispatcher para descargar AEM servidor

Habilitar sesiones seguras

Etapa 33 Hacer que las solicitudes se almacenen en caché
  1. Configuración general de Dispatcher
  2. Configuración de la caché de Dispatcher

Cómo mejorar la proporción de caché; hacer que las solicitudes se puedan almacenar en caché (prácticas recomendadas de Dispatcher)

Además, tenga en cuenta los siguientes ajustes para optimizar las configuraciones de almacenamiento en caché

  1. Establezca una regla de no caché para solicitudes HTTP que no sean de GET
  2. Configurar cadenas de consulta que no se pueden almacenar en caché
  3. No almacene en caché las URL con extensiones que faltan
  4. Encabezados de autenticación de caché (posible desde la versión 4.1.10 de Dispatcher)
Etapa 34 Actualización de la versión de Dispatcher

Puede descargar la última versión de Dispatcher en esta ubicación:

Seguir vínculo

Etapa 35 Configurar Dispatcher Configuración de Dispatcher
Etapa 36 Comprobar invalidación de caché
Pasos 37 y 38 Carga diferida Consulte la sesión de Gem sobre AEM rendimiento web.
Etapa 39 Utilice la preconexión para reducir la sobrecarga de conexión Consulte la sesión de Gem indicada anteriormente. Además, la documentación adicional se preconecta en W3c: https://www.w3.org/TR/resource-hints/#dfn-preconnect
Pasos 40 y 41
Tiempo de latencia y respuesta de los hosts externos Investigue la latencia y el tiempo de respuesta de los hosts externos.
Pasos 45
y 47

Uso de HTTP/2 Consulte la sesión de Gem para ver los pasos 37, 38 y 39. Además, consulte this publicación en el foro sobre compatibilidad con HTTP/2.
Etapa 49 Reducir tamaño de carga útil Habilitar Gzip y reducir el tamaño de la imagen.
Pasos 42 y 43 Mantener vivo

¿Es la variable Keep-Alive presente en las diferentes solicitudes para reutilizar conexiones? De lo contrario, significaría que cada solicitud conduce a otro establecimiento de conexión, que introduce una sobrecarga innecesaria. (Análisis de solicitudes HTTP estándar en el explorador)

Puede comprobar la Herramienta Servidor proxy para comprobar la existencia de conexiones Keep-Alive.

Etapa 44 ¿Cuántas solicitudes se realizan? Realice un análisis de solicitud HTTP estándar en el explorador.
Etapa 46 Reducir el número de solicitudes
  1. Concatenar recursos (imágenes, sprites CSS, JSON, etc.)
  2. Integración de Clientlibs:
    1. Creación de carpetas de la biblioteca del cliente - consulte el encabezado Uso de la incrustación para minimizar las solicitudes
Etapa 48 ¿Cuál es el tamaño de la carga útil? Análisis de solicitud HTTP estándar en el explorador
Pasos 50 y 51 Bloqueo de código JS https://docs.adobe.com/ddc/en/gems/aem-web-performance.html

En esta página