Arborescence de la performance performance-tree

Portée scope

Le diagramme suivant est destiné à fournir des conseils sur les étapes à suivre pour résoudre les problèmes de performances. Il est divisé en cinq sections afin de faciliter la lecture.

Chaque étape du diagramme est associée à une ressource ou à une recommandation.

Conditions préalables et hypothèses prerequisites-and-assumptions

L’hypothèse est qu’un problème de performance est observé sur une page donnée (une console d’AEM ou une page web) et peut être reproduit de manière cohérente. Disposer d’un moyen de tester ou de surveiller les performances est une condition préalable à l’ouverture de l’enquête.

L’analyse commence à l’étape 0. L’objectif est de déterminer quelle entité (Dispatcher, hôte externe ou AEM) est responsable du problème de performance, puis de découvrir la zone (serveur ou réseau) qui doit être étudiée.

Section 1 section

chlimage_1-103

Section 2 section-1

chlimage_1-104

Section 3 section-2

chlimage_1-105

Section 4 section-3

chlimage_1-106

Section 5 section-4

chlimage_1-107

Étape
Titre
Ressources
Étape 0
Analyser le flux de requêtes

Vous pouvez utiliser l’analyse des requêtes HTTP standard dans le navigateur pour analyser le flux de requêtes. Pour plus d’informations sur la manière d’effectuer cette analyse sur Chrome, veuillez consulter :

https://developer.chrome.com/docs/devtools/

Étape 2
Les requêtes proviennent-elles d’hôtes externes ?
Vous pouvez utiliser l’analyse des requêtes HTTP standard dans le navigateur pour analyser le flux de requêtes. Consultez les liens ci-dessus pour savoir comment effectuer cette analyse sur Chrome.
Étape 3
Les requêtes peuvent-elles être mises en cache ?
Pour plus d’informations sur les requêtes pouvant être mises en cache et pour obtenir des conseils généraux sur l’optimisation des performances du Dispatcher, veuillez consulter Optimisation des performances du Dispatcher.
Étape 4
Les demandes proviennent-elles du Dispatcher ?
Pour vérifier si les requêtes sont correctement mises en cache, veuillez consulter la documentation sur le débogage du Dispatcher.
Étape 5
Le Dispatcher essaie-t-il d’authentifier chaque demande via AEM ?
Vérifiez si le Dispatcher envoie les requêtes HEAD à AEM pour authentification avant de diffuser la ressource mise en cache. Recherchez les requêtes HEAD dans le access.log d’AEM. Pour plus d’informations, consultez la section Journalisation.
Étape 6
L’emplacement géographique du Dispatcher est-il éloigné des utilisateurs et utilisatrices ?
Rapprochez le Dispatcher des utilisateurs et utilisatrices.
Étape 7
La couche réseau du Dispatcher est-elle normale ?
Examinez la couche réseau pour détecter les problèmes de saturation et de latence.
Étape 8
La lenteur est-elle reproductible avec une instance locale ?
Utiliser Tough Day pour répliquer des conditions « réelles » à partir des instances de production. Si ce scénario n’est pas réaliste pour l’espace de votre développement, veillez à tester l’instance de production (ou une instance d’évaluation identique) dans un contexte réseau différent.
Étape 9
L’emplacement géographique du serveur est-il éloigné des utilisateurs et utilisatrices ?
Rapprochez le serveur des utilisateurs et utilisatrices.
Étapes 10 et 29
Examiner la couche réseau

Examinez la couche réseau pour détecter les problèmes de saturation et de latence.

Pour le niveau de création, il est recommandé que la latence ne dépasse pas 100 millisecondes.

Pour plus d’informations sur les conseils d’optimisation des performances, reportez-vous à cette page.

Étape 11
Rapprochez le serveur ou ajoutez-en un par région
Étape 12
Résoudre les problèmes liés au serveur AEM
Pour plus d’informations, consultez les sous-étapes suivantes du diagramme.
Étape 13
Vérifier les exigences matérielles
Consultez la documentation sur les Instructions de dimensionnement du matériel.
Étape 14
Vérification des causes fréquentes des problèmes de performances
Étape 15
Identification des demandes lentes

Vous pouvez identifier les requêtes lentes en analysant le request.log ou à l’aide de rlog.jar.

Pour plus d’informations sur l’utilisation de rlog.jar, consultez cette page.

Voir Recherche de requêtes avec de longues durées à l’aide de rlog.jar.

Étape 16
Serveur de profil
Pour plus d’informations sur les outils de création de profils utilisateur que vous pouvez utiliser avec AEM, consultez Outils de surveillance et d’analyse des performances.
Étape 17
Recherche de méthodes lentes dans le profilage
Étape 18
Scénarios courants de création de profils utilisateur
Voir Analyse de scénarios spécifiques dans la section Optimisation des performances.
Étape 19
Processeur à 100 %
https://experienceleague.adobe.com/docs/experience-manager-release-information/aem-release-updates/previous-updates/aem-previous-versions.html?lang=fr
Étape 20
Mémoire insuffisante
  1. Mémoire insuffisante
  2. Mon application renvoie des erreurs de mémoire insuffisante
  3. Analysez les problèmes de mémoire.
Étape 21
E/S de disque
Voir la section E/S de disque dans la documentation Surveillance et maintenance.
Étapes 22 et 22.1
Ratio de cache
Voir Calcul du ratio de cache de Dispatcher.
Étape 23
Requêtes lentes
Bonnes pratiques relatives aux requêtes et à l’indexation
Étape 24
Réglage du référentiel
Étape 25
Workflows en cours d’exécution
Étape 26
Infrastructure MSM
Bonnes pratiques relatives au gestionnaire de sites multiples
Étape 27
Réglage d’Assets
  1. Service de synchronisation d’Assets
  2. Instances multiples de gestion des ressources numériques
  3. Article présentant des conseils sur l’optimisation des performances disponible ici.
Étape 28
Sessions non fermées
Contrôle des sessions JCR non fermées
Étape 30
Rapprochement du Dispatcher (ajout d’un Dispatcher par « région » ?)
Étape 31
Utilisation d’un réseau CDN devant le Dispatcher
Utilisation du Dispatcher avec un CDN
Étape 32
Pour décharger le serveur AEM, utilisez la gestion de session au niveau du Dispatcher.
Activation de sessions sécurisées
Étape 33
Activation de la mise en cache potentielle des demandes
  1. Configuration générale du Dispatcher
  2. Configuration du cache du Dispatcher

Comment améliorer le ratio de cache ; faire en sorte que les requêtes puissent être mises en cache (bonnes pratiques du Dispatcher)

Tenez également compte des paramètres ci-dessous pour optimiser vos configurations de mise en cache.

  1. Définissez une règle de non-mise en cache pour une requête HTTP qui n’est pas GET.
  2. Configurez les chaînes de requête pour qu’elles ne puissent pas être mises en cache.
  3. Ne mettez pas en cache les URL avec des extensions manquantes.
  4. En-têtes d’authentification du cache (possibles depuis la version 4.1.10 du Dispatcher)
Étape 34
Mettre à niveau la version du Dispatcher

Vous pouvez télécharger la dernière version du Dispatcher à cet emplacement :

Suivez le lien.

Étape 35
Configuration du Dispatcher
Configuration du Dispatcher
Étape 36
Vérification de l’invalidation du cache
Étapes 37 et 38
Chargement différé
Suivez la session Gem sur la performance web d’AEM.
Étape 39
Utilisation de la pré-connexion pour réduire la surcharge de connexion
Reportez-vous à la session Gem ci-dessus. Vous pouvez également accéder à d’autres documents sur la pré-connexion sur W3c : https://html.spec.whatwg.org/#linkTypes
Étapes 40 et 41
Latence et temps de réponse des hôtes externes
Examinez la latence et le temps de réponse des hôtes externes.
Étapes 45
et 47
Utilisation du HTTP/2
Voir la session Gem des étapes 37, 38 et 39. En outre, consultez cet article de forum sur la prise en charge du HTTP/2
.
Étape 49
Réduction de la taille d’une payload
Activez Gzip et réduisez la taille de l’image.
Étapes 42 et 43
Keep-Alive

L’en-tête Keep-Alive est-il présent dans les différentes requêtes de réutilisation des connexions ? Dans le cas contraire, cela signifie que chaque requête mène à établir une nouvelle connexion, entraînant ainsi une surcharge inopportune. (Analyse des requêtes HTTP standard dans le navigateur)

Vous pouvez accéder à l’Outil Serveur proxy pour vérifier les connexions Keep-alive.

Étape 44
Combien de requêtes sont-elles effectuées ?
Exécutez l’analyse des requêtes HTTP standard dans le navigateur.
Étape 46
Réduction du nombre de requêtes
  1. Concaténation de ressources (images, sprites CSS, JSON)
  2. Incorporation de bibliothèques clientes
    1. Création de dossiers dans la bibliothèque cliente : consultez la section Utilisation d’incorporations pour réduire les demandes.
Étape 48
Quelle est la taille de la payload ?
Analyse des requêtes HTTP standard dans le navigateur
Étapes 50 et 51
Blocage du code JS
https://experienceleague.adobe.com/docs/experience-manager-gems-events/gems/gems2016/aem-web-performance.html?lang=fr
recommendation-more-help
19ffd973-7af2-44d0-84b5-d547b0dffee2