Albero prestazioni performance-tree

Ambito scope

Il diagramma seguente ha lo scopo di fornire indicazioni sui passaggi da eseguire per risolvere i problemi di prestazioni. È suddiviso in cinque sezioni per facilitarne la lettura.

Ogni passaggio nel diagramma è collegato a una risorsa di documentazione o a un consiglio.

Prerequisiti e presupposti prerequisites-and-assumptions

Si presume che in una determinata pagina (una console AEM o una pagina web) venga rilevato un problema di prestazioni che può essere riprodotto in modo coerente. Prima di avviare l’indagine è necessario disporre di un modo per testare o monitorare le prestazioni.

L’analisi inizia dal passaggio 0. L’obiettivo è determinare quale entità (Dispatcher, host esterno o AEM) è responsabile del problema di prestazioni, quindi determinare quale area (server o rete) deve essere esaminata.

Sezione 1 section

chlimage_1-103

Sezione 2 section-1

chlimage_1-104

Sezione 3 section-2

chlimage_1-105

Sezione 4 section-3

chlimage_1-106

Sezione 5 section-4

chlimage_1-107

Passaggio
Titolo
Riferimenti
Passaggio 0
Analizza flusso di richieste

Puoi utilizzare l’analisi standard delle richieste HTTP nel browser per analizzare il flusso delle richieste. Per ulteriori informazioni su come eseguire questa analisi su Chrome, consulta:

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

Passaggio 2
Le richieste provengono da host esterni?
Puoi utilizzare l’analisi standard delle richieste HTTP nel browser per analizzare il flusso delle richieste. Consulta i collegamenti riportati sopra su come eseguire questa analisi su Chrome.
Passaggio 3
Le richieste possono essere memorizzate nella cache?
Per ulteriori informazioni sulle richieste memorizzabili in cache e consigli generali sull’ottimizzazione delle prestazioni di Dispatcher, consulta Ottimizzazione delle prestazioni del Dispatcher.
Passaggio 4
Le richieste provengono da Dispatcher?
Per verificare se le richieste sono memorizzate correttamente nella cache, seleziona la Documentazione sul debug di Dispatcher.
Passaggio 5
Dispatcher sta tentando di autenticare ogni richiesta tramite AEM?
Controlla se Dispatcher invia HEAD richiede all’AEM l’autenticazione prima di consegnare la risorsa memorizzata in cache. Cerca HEAD Richieste in seno all'AEM access.log. Per ulteriori informazioni, consulta Registrazione.
Passaggio 6
La posizione geografica del Dispatcher è molto lontana dagli utenti?
Avvicina Dispatcher agli utenti.
Passaggio 7
Il livello di rete del Dispatcher è corretto?
Esaminate il livello di rete per individuare eventuali problemi di saturazione e latenza.
Passaggio 8
La lentezza è riproducibile con un’istanza locale?
Utilizzare Giornata difficile per replicare condizioni "reali" dalle istanze di produzione. Se questo scenario non è realistico per lo spazio di sviluppo, assicurati di testare l’istanza di produzione (o un’istanza di staging identica) in un contesto di rete diverso.
Passaggio 9
La posizione geografica del server è lontana dagli utenti?
Avvicina il server agli utenti.
Passaggi 10 e 29
Analizzare il livello di rete

Esaminate il livello di rete per individuare eventuali problemi di saturazione e latenza.

Per il livello di authoring, si consiglia di non superare i 100 millisecondi.

Per ulteriori informazioni sui suggerimenti di ottimizzazione delle prestazioni, consulta questa pagina.

Passaggio 11
Avvicinare il server o aggiungerne uno per area
Passaggio 12
Risoluzione dei problemi del server AEM
Per ulteriori informazioni, controllare i seguenti passaggi secondari nel diagramma.
Passaggio 13
Verifica i requisiti hardware
Consulta la documentazione su Linee guida per il dimensionamento dell'hardware.
Passaggio 14
Verificare la presenza di cause frequenti di problemi di prestazioni
Passaggio 15
Trovare richieste lente

Puoi verificare la presenza di richieste lente analizzando request.log o utilizzando rlog.jar.

Per ulteriori informazioni sull’utilizzo di rlog.jar, consulta questa pagina.

Consulta Trovare richieste con tempi di esecuzione lunghi utilizzando rlog.jar.

Passaggio 16
Server dei profili
Per informazioni sugli strumenti di profilatura utilizzabili con AEM, consulta Strumenti per il monitoraggio e l'analisi delle prestazioni.
Passaggio 17
Trovare metodi lenti nella profilatura
Passaggio 18
Scenari comuni di profilazione
Consulta Analisi di scenari specifici nella sezione Ottimizzazione delle prestazioni.
Passaggio 19
CPU 100%
https://experienceleague.adobe.com/docs/experience-manager-release-information/aem-release-updates/previous-updates/aem-previous-versions.html?lang=it
Passaggio 20
Memoria insufficiente
  1. Memoria insufficiente
  2. La mia applicazione genera errori di memoria insufficiente
  3. Analizzare i problemi di memoria.
Passaggio 21
I/O disco
Consulta la I/O disco nella documentazione di Monitoraggio e manutenzione.
Passaggi 22 e 22.1
Proporzione cache
Consulta Calcolo del rapporto della cache di Dispatcher.
Passaggio 23
Query lente
Best practice per query e indicizzazione
Passaggio 24
Ottimizzazione dell’archivio
Passaggio 25
Flussi di lavoro in esecuzione
Passaggio 26
Infrastruttura MSM
Best practice per il gestore multisito
Passaggio 27
Ottimizzazione risorse
  1. Servizio di sincronizzazione risorse
  2. Più istanze DAM
  3. Articolo sui suggerimenti per l’ottimizzazione delle prestazioni qui.
Passaggio 28
Sessioni non chiuse
Verifica di sessioni JCR non chiuse
Passaggio 30
Avvicinare il Dispatcher (aggiungerne uno per "area"?)
Passaggio 31
Utilizzare la rete CDN prima di Dispatcher
Utilizzo di Dispatcher con una rete CDN
Passaggio 32
Per scaricare il server AEM, utilizza la gestione delle sessioni a livello di Dispatcher
Abilitazione di sessioni sicure
Passaggio 33
Rendi le richieste memorizzabili in cache
  1. Configurazione generale del Dispatcher
  2. Configurazione della cache di Dispatcher

Come migliorare il rapporto della cache; rendere le richieste memorizzabili in cache (best practice per Dispatcher)

Inoltre, considera le seguenti impostazioni per ottimizzare le configurazioni di memorizzazione in cache

  1. Imposta una regola senza cache per la richiesta HTTP che non è di GET
  2. Configurare le stringhe di query affinché non siano memorizzabili in cache
  3. Non memorizzare in cache gli URL con estensioni mancanti
  4. Intestazioni di autenticazione della cache (possibile dalla versione 4.1.10 di Dispatcher)
Passaggio 34
Aggiorna versione di Dispatcher

Puoi scaricare la versione più recente di Dispatcher nella posizione seguente:

Segui collegamento

Passaggio 35
Configurare Dispatcher
Configurazione del Dispatcher
Passaggio 36
Verifica annullamento validità cache
Passaggi 37 e 38
Caricamento lento
Consulta la sessione Gem sulle prestazioni web AEM.
Passaggio 39
Utilizzare la preconnessione per ridurre il sovraccarico di connessione
Vedi la precedente sezione Sessione Gem. Inoltre, documentazione aggiuntiva di pre-connessione su W3c: https://html.spec.whatwg.org/#linkTypes
Passaggi 40 e 41
Latenza e tempo di risposta degli host esterni
Esaminare la latenza e il tempo di risposta per gli host esterni.
Passaggi 45
e 47
Utilizzo di HTTP/2
Consulta la sessione Gem per i passaggi 37, 38 e 39. Inoltre, controlla questo post forum sul supporto HTTP/2.
Passaggio 49
Riduci dimensione payload
Abilita Gzip e ridurre le dimensioni dell'immagine.
Passaggi 42 e 43
Keep-Alive

È il Keep-Alive presente nelle diverse richieste di riutilizzo delle connessioni? In caso contrario, ciò significherebbe che ogni richiesta porta a un’altra connessione, il che introduce costi generali inutili. (Analisi delle richieste HTTP standard nel browser)

Puoi controllare la Strumento Server proxy per verificare la presenza di connessioni Keep-Alive.

Passaggio 44
Quante richieste vengono effettuate?
Esegui l’analisi della richiesta HTTP standard nel browser.
Passaggio 46
Riduzione del numero di richieste
  1. Concatenare risorse (immagini, sprite CSS, JSON)
  2. Clientlibs che incorpora:
    1. Creazione di cartelle di librerie client - consulta l’intestazione Utilizzo dell’incorporamento per ridurre al minimo le richieste
Passaggio 48
Qual è la dimensione del payload?
Analisi delle richieste HTTP standard nel browser
Passaggi 50 e 51
Blocco del codice JS
https://experienceleague.adobe.com/docs/experience-manager-gems-events/gems/gems2016/aem-web-performance.html?lang=it
recommendation-more-help
19ffd973-7af2-44d0-84b5-d547b0dffee2