Risoluzione dei problemi di utilizzo e timeout elevati di CPU nelle istanze Adobe Experience Manager 6.5 Publish
Questo articolo fornisce indicazioni per la risoluzione degli errori di utilizzo e timeout elevati di CPU negli ambienti di pubblicazione Adobe Experience Manager (AEM) 6.5. Le cause principali includono richieste ripetute a risorse mancanti, errori di integrazione back-end e gestione inefficiente delle pagine di errore.
Descrizione description
Ambiente
Adobe Experience Manager 6.5.x (locale)
Sintomi
- Utilizzo intensivo di CPU nelle istanze AEM Publish
- Errori di timeout per gli utenti finali che accedono ai siti pubblicati
- Richieste ripetute per risorse mancanti (ad esempio fogli di stile o font web mancanti), spesso da bot o crawler
- Errori di rendering della pagina di errore personalizzata, con conseguenti registri di errore di grandi dimensioni e gestione degli errori costosa
- Errori ripetuti nel recuperare i dati di prodotto dai sistemi back-end, con voci di registro come:
No product data received from backend - Pressione di memoria sulle istanze Publish, con un crescente utilizzo della memoria e lunghe pause di Garbage Collection (GC)
- File
error.logdi grandi dimensioni (ad esempio, centinaia di MB in poche ore) - La registrazione delle richieste non acquisisce i tempi di risposta, rendendo difficile correlare le richieste lente
Causa
Gli errori di timeout e CPU elevati sono causati principalmente da:
- Richieste ripetute a risorse mancanti, generando troppi errori 404
- Gestione inefficiente delle pagine di errori personalizzate che attiva eccezioni e tracce dello stack per ogni risorsa mancante
- Errori di integrazione back-end che portano a ripetuti tentativi di recupero dei dati
- Pressione di memoria a causa dell’elevato volume di errore e dell’utilizzo inefficiente della cache
Risoluzione resolution
Per risolvere il problema, segui i passaggi seguenti:
-
Identificare e ripristinare le risorse statiche mancanti:
- Esaminare i modelli di sito e il contenuto per i riferimenti a file mancanti, ad esempio fogli di stile o font Web.
- Ripristinare tutte le risorse richieste nella posizione corretta nell’archivio o nel file system.
- Se le risorse sono obsolete, rimuovine i riferimenti dai modelli e dal contenuto per evitare ripetuti errori 404 Not Found.
-
Correggere il rendering della pagina di errore personalizzata:
- Verificare che il modulo della pagina di errore personalizzata venga inizializzato correttamente dopo il riavvio del server.
- Conferma che la pagina di errore personalizzata restituisca risposte leggere per le risorse mancanti senza generare tracce o eccezioni full stack.
-
Analisi degli errori di integrazione back-end:
- Esamina i registri di sistema del back-end per individuare eventuali errori o ritardi nella risposta alle richieste di dati sui prodotti.
- Lavora con i team back-end per risolvere i problemi di connettività o recupero dei dati.
- Controlla la frequenza con cui vengono eseguiti i processi di cancellazione della cache del prodotto e, se possibile, riducine la frequenza per ridurre il carico sui sistemi back-end.
-
Pressione memoria di monitoraggio e indirizzamento:
- Monitora l’utilizzo della memoria e l’attività di Garbage Collection nelle istanze Publish interessate.
- Eseguire la profilatura della memoria per identificare potenziali perdite di memoria o eccessiva conservazione degli oggetti.
- Se necessario, regolare le dimensioni della cache o rivedere il codice personalizzato per le inefficienze di memoria.
-
Migliora la registrazione delle richieste abilitando o configurando i registri di richieste per acquisire i tempi di risposta. Utilizzare queste informazioni per correlare le richieste a problemi di prestazioni.
-
Dopo aver implementato le modifiche, monitora l’utilizzo del CPU, l’utilizzo della memoria e le percentuali di errore per verificare che le prestazioni migliorino.
-
Se il problema persiste, raccogli e analizza nuovi file di registro che coprono gli intervalli temporali interessati.