Risoluzione dei problemi di heap Java e metaspace OutOfMemory in Adobe Experience Manager 6.5.24
Scopri come diagnosticare e risolvere gli errori di heap Java e metaspace OutOfMemory nelle istanze di AEM 6.5.24 Author e Publisher.
Descrizione description
Ambiente
Istanze di Adobe Experience Manager (AEM) 6.5.24 Author e Publisher, applicabili a qualsiasi ambiente di distribuzione (sviluppo, staging o produzione).
Sintomi
-
Aumento significativo dell’utilizzo di heap Java e/o metaspace nel tempo.
-
Le istanze non rispondono o si bloccano a causa di condizioni OutOfMemoryError ripetute.
-
I registri di errori contengono messaggi quali:
- java.lang.OutOfMemoryError: Spazio heap Java
- org.osgi.framework.ServiceException: Eccezione Service factory: spazio heap Java
-
Messaggi di errore frequenti relativi a errori di risoluzione delle risorse, ad esempio:
- Risorsa non trovata per gli errori di percorso effettivi durante la risoluzione di percorsi di pagina inesistenti
- Errori di adattamento del modello (ad esempio: modello nullo, pagina non trovata)
Causa
Le condizioni OutOfMemory sono principalmente dovute all’esaurimento dell’heap Java associato a errori di risoluzione delle risorse ripetuti ed elaborazione a livello di applicazione. Non è stato confermato alcun difetto del prodotto specifico per Metaspace in AEM 6.5.24. Per isolare e correggere la causa principale è necessaria un’ulteriore analisi delle immagini heap e del codice dell’applicazione.
Risoluzione resolution
Per risolvere il problema, segui i passaggi seguenti:
-
Raccolta dati di diagnostica:
-
Raccogli i registri degli errori, le immagini heap e le immagini thread dalle istanze Author e Publisher al momento di OutOfMemoryError.
-
Esamina i registri di Garbage Collection (GC) per verificare l’esaurimento di metaspace o heap Java.
-
-
Analizzare le immagini heap:
-
Utilizzare uno strumento come Eclipse Memory Analyzer (MAT) per identificare oggetti o classi con le dimensioni heap conservate più elevate.
-
Verificare la presenza di anomalie nella conservazione degli oggetti, perdite di memoria o eccessiva attività di risoluzione delle risorse.
-
-
Verifica codice applicazione:
-
Esamina il codice personalizzato, in particolare i componenti coinvolti nella risoluzione delle risorse e nell’adattamento del modello.
-
Risolvi eventuali pattern che possono causare eccessiva conservazione della memoria o errori ripetuti.
-
-
Verifica la presenza di problemi noti:
-
Esaminare la versione di
org.apache.sling.jcr.resourcein uso per eventuali problemi noti relativi ai listener di risorse o alla conservazione della sessione. -
Consulta le note sulla versione di Adobe AEM e i forum di Experience League (ad esempio: Community di AEM Experience League) per eventuali aggiornamenti rapidi o Service Pack per risolvere problemi di memoria in AEM 6.5.24.
-
-
Ottimizza risoluzione risorse:
-
Riduci i tentativi di risoluzione delle risorse non necessari per i percorsi inesistenti.
-
Gestisci agevolmente gli adattamenti di modelli null per evitare errori eccessivi nella registrazione e nell’utilizzo della memoria.
-
-
Monitorare e ottimizzare le impostazioni JVM:
-
Rivedi e regola i parametri delle dimensioni dello spazio metaspace e heap JVM in base al carico di lavoro.
-
Monitora le tendenze della memoria dopo l’applicazione di modifiche al codice e alla configurazione.
-
Dopo aver completato questi passaggi, verificare che l’utilizzo della memoria si stabilizzi e che non si verifichino più errori OutOfMemory.