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.log di 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:

  1. 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.
  2. 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.
  3. 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.
  4. 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.
  5. 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.

  6. 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.

  7. Se il problema persiste, raccogli e analizza nuovi file di registro che coprono gli intervalli temporali interessati.

recommendation-more-help
experience-cloud-kcs-help-kbarticles