Prestandaträd

Omfång

Bilden nedan är avsedd att ge vägledning om vilka åtgärder som behöver vidtas för att felsöka prestandaproblem. Den delas upp i fem avsnitt för enklare läsning.

Varje steg i diagrammet är länkat till en dokumentationsresurs eller en rekommendation.

Förutsättningar och antaganden

Antagandet är att ett prestandaproblem observeras på en viss sida (antingen en AEM konsol eller en webbsida) och kan återges på ett enhetligt sätt. Att kunna testa eller övervaka prestanda är en förutsättning innan undersökningen inleds.

Analysen börjar med steg 0. Målet är att avgöra vilken enhet (avsändare, extern värd eller AEM) som ansvarar för prestandaproblemet och sedan avgöra vilket område (server eller nätverk) som ska undersökas.

Avsnitt 1

chlimage_1-103

Avsnitt 2

chlimage_1-104

Avsnitt 3

chlimage_1-105

Avsnitt 4

chlimage_1-106

Avsnitt 5

chlimage_1-107

Steg Titel Resurser
Steg 0 Analysera flödet för förfrågningar

Du kan använda standardanalys av HTTP-begäran i webbläsaren för att analysera förfrågningsflödet. Mer information om hur du gör detta i Chrome finns i:

https://developers.google.com/web/tools/chrome-devtools/profile/network-performance/resource-
loadinghttps://developers.google.com/web/tools/chrome-devtools/profile/network-performance/understanding-resource-timing

Steg 2 Kommer förfrågningar från externa värdar? Du kan använda standardanalys av HTTP-begäran i webbläsaren för att analysera förfrågningsflödet. Se länkarna ovan om hur du gör detta i Chrome.
Steg 3 Kan förfrågningarna cachelagras? Mer information om tillgängliga begäranden och allmänna råd om prestandaoptimering för Dispatcher finns i Prestandaoptimering för Dispatcher.
Steg 4 Kommer förfrågningar från Dispatcher?

Kontrollera Felsökningsdokumentationen för Dispatcher för att se om begäranden har cachelagrats korrekt.

Steg 5 Försöker Dispatcher autentisera varje begäran via AEM? Kontrollera om dispatchern skickar HEAD-begäranden till AEM för autentisering innan den cachelagrade resursen levereras. Du kan göra detta genom att söka efter HEAD-begäranden i AEM access.log. Mer information finns i Loggning.
Steg 6 Är den geografiska platsen för Dispatcher långt från användarna? Flytta Dispatcher närmare användarna.
Steg 7 Går nätverkslagret för Dispatcher bra?
Undersök nätverkslagret för problem med mättnad och fördröjning.

Steg 8 Kan långsamheten reproduceras med en lokal instans?

Använd Tough Day för att replikera verkliga förhållanden från produktionsinstanserna. Om detta inte är realistiskt för utvecklingens hastighet måste du testa produktionsinstansen (eller en identisk mellanlagringsinstans) i en annan nätverkskontext.

Steg 9 Är serverns geografiska plats långt från användarna? Flytta servern närmare användarna.
Steg 10 och 29 Undersök nätverkslager

Undersök nätverkslagret för problem med mättnad och fördröjning.

För författarnivån rekommenderas att fördröjningen inte överstiger 100 millisekunder.

Mer information om tips för prestandaoptimering finns på den här sidan.

Steg 11 Flytta servern närmare eller lägg till en per region
Steg 12 Felsök AEM server Mer information finns i följande delsteg i diagrammet.
Steg 13 Kontrollera maskinvarukraven Läs dokumentationen om Riktlinjer för maskinvarustorlek.
Steg 14 Kontrollera om det finns vanliga orsaker till prestandaproblem
Steg 15 Hitta långsamma förfrågningar

Du kan kontrollera om det finns långsamma begäranden genom att analysera request.log eller genom att använda rlog.jar.

Mer information om hur du använder rlog.jar finns på den här sidan.

Mer information finns i Använda rlog.jar för att hitta begäranden med lång varaktighet.
.

Steg 16 Profilserver

Mer information om profileringsverktyg som du kan använda med AEM finns i Verktyg för övervakning och analys av prestanda.

Steg 17 Hitta långsamma metoder i profilering
Steg 18 Vanliga scenarier för profilering Se Analysera specifika scenarier i avsnittet Prestandaoptimering.
Steg 19 100 % CPU https://helpx.adobe.com/se/experience-manager/6-3/sites-deploying/monitoring-and-maintaining.html#MonitoringPerformance
Steg 20 Slut på minne
  1. Slut på minne
  2. Mitt program orsakar fel av typen slut på minne
  3. Analysera minnesproblem i hjälpen.
Steg 21 Skiva-I/O

Se avsnittet Disk I/O i dokumentationen för övervakning och underhåll.

Steg 22 och 22.1 Cachenivåer Se Beräkna Dispatcher Cache Ratio.

Steg 23 Långsamma frågor Metodtips för frågor och indexering
Steg 24 Databasjustering
Steg 25 Arbetsflöden som körs

Steg 26 MSM-infrastruktur

Bästa praxis för hantering av flera webbplatser

Steg 27 Resursjustering
  1. Resurssynkroniseringstjänst
  2. Flera DAM-instanser
  3. Artiklar med tips för prestandajustering här och här.
Steg 28 Oavslutade sessioner

Söker efter oavslutade JCR-sessioner

Steg 30 Flytta dispatchern närmare (lägg till en per region?)
Steg 31 Använd CDN framför dispatcher Använda Dispatcher med ett CDN
Steg 32 Använd sessionshantering på dispatchernivå för att avlasta AEM server

Aktivera säkra sessioner

Steg 33 Gör förfrågningar tillgängliga
  1. Allmän Dispatcher-konfiguration
  2. Konfigurera Dispatcher Cache

Hur man förbättrar cachekvoten, gör förfrågningar cachelagrade (god praxis vid utsändning)

Ta även hänsyn till inställningarna nedan för att optimera dina cachelagringskonfigurationer

  1. Ange en regel utan cache för HTTP-begäran som inte är GET
  2. Konfigurera frågesträngar som inte ska kunna cachelagras
  3. Cachelagra inte URL:er som saknar tillägg
  4. Cacheautentiseringsrubriker (möjligt sedan Dispatcher version 4.1.10)
Steg 34 Uppgradera dispatcherversion

Du kan hämta den senaste Dispatcher-versionen på den här platsen:

Följ länk

Steg 35 Konfigurera dispatcher Konfigurera Dispatcher
Steg 36 Kontrollera cacheminnets ogiltigförklaring
Steg 37 och 38 Lazyladdning Se Gem Session om AEM webbprestanda.
Steg 39 Använd pre-connect för att minska anslutningens belastning Se Gem Session som anges ovan. Dessutom kan du föransluta ytterligare dokumentation på W3c: https://www.w3.org/TR/resource-hints/#dfn-preconnect
Steg 40 och 41
Latens och svarstid för externa värdar Undersök latens och svarstid för externa värdar.
Steg 45
och 47

Använda HTTP/2 Se Gem Session för steg 37, 38 och 39. Ta även en titt på det här foruminlägget om stöd för HTTP/2.
Steg 49 Minska nyttolastens storlek Aktivera Gzipand för att minska bildstorleken.
Steg 42 och 43 Behåll

Finns rubriken Keep-Alive i olika begäranden om återanvändning av anslutningar? I annat fall skulle det innebära att varje begäran leder till en annan anslutningsanläggning, vilket medför onödiga kostnader. (Standardanalys av HTTP-begäran i webbläsaren)

Du kan kontrollera proxyserververktyget om du vill söka efter Keep-Alive-anslutningar.

Steg 44 Hur många förfrågningar görs? Utför standardanalys av HTTP-begäran i webbläsaren.
Steg 46 Minska antalet förfrågningar
  1. Sammanfoga resurser (bilder, CSS-sprites, JSON osv.)
  2. Inbäddning av klienter:
    1. Skapa klientbiblioteksmappar - se rubriken Använda inbäddning för att minimera begäranden
Steg 48 Vilken är nyttolastens storlek? Standardanalys av HTTP-begäran i webbläsaren
Steg 50 och 51 JS-kodblockering https://docs.adobe.com/ddc/en/gems/aem-web-performance.html

På denna sida