Prestatiestructuur

Scope

Het hieronder diagram is bedoeld om begeleiding over de stappen te verstrekken die moeten worden genomen om prestatieskwesties problemen op te lossen. De afbeelding wordt in vijf secties gesplitst, zodat u deze gemakkelijker kunt lezen.

Elke stap in het diagram is verbonden met een documentatiemiddel of een aanbeveling.

Vereisten en veronderstellingen

De aanname is dat een prestatieprobleem wordt waargenomen op een bepaalde pagina (een AEM console of een webpagina) en consistent kan worden gereproduceerd. Een manier om de prestaties te testen of te controleren is een voorwaarde voordat het onderzoek wordt gestart.

De analyse begint bij stap 0. Het doel is te bepalen welke entiteit (dispatcher, externe host of AEM) verantwoordelijk is voor het prestatieprobleem en vervolgens te bepalen welk gebied (server of netwerk) moet worden onderzocht.

Sectie 1

chlimage_1-103

Sectie 2

chlimage_1-104

Sectie 3

chlimage_1-106

Sectie 4

chlimage_1-106

Sectie 5

chlimage_1-107

Stap Titel Bronnen
Stap 0 Aanvraagstroom analyseren

U kunt standaard HTTP- verzoekanalyse in browser gebruiken om de verzoekstroom te analyseren. Voor meer informatie over hoe te om dit op Chrome te doen, zie:

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

Stap 2 Worden verzoeken afkomstig van externe hosts? U kunt standaard HTTP- verzoekanalyse in browser gebruiken om de verzoekstroom te analyseren. Zie de bovenstaande koppelingen op hoe u dit kunt doen op Chrome.
Stap 3 Kunnen de verzoeken in de cache worden geplaatst? Voor meer informatie over cacheable verzoeken en algemene de prestatiesoptimaliseringsadvies van de Verzender, zie Optimalisering van de Prestaties van de Verzender.
Stap 4 Zijn verzoeken afkomstig van de Dispatcher?

Raadpleeg de Foutopsporingsdocumentatie voor Dispatcher om te controleren of de aanvragen correct in de cache zijn opgeslagen.

Stap 5 Probeert de Dispatcher elk verzoek via AEM te verifiëren? Controleer of de verzender HEAD verzoeken naar AEM voor verificatie verzendt voordat de in de cache opgeslagen bron wordt geleverd. U kunt dit doen door HEAD verzoeken in AEM access.log te zoeken. Voor meer informatie, zie Registratie.
Stap 6 Is de geografische locatie van de verzender ver van de gebruikers vandaan? Verplaats de Dispatcher dichter naar de gebruikers.
Stap 7 Is de netwerklaag van de Verzender OK?
Onderzoek de netwerklaag voor verzadiging en latentiekwesties.

Stap 8 Is de traagheid reproduceerbaar met een lokale instantie?

Gebruik Tough Day om de "echte wereld"omstandigheden van de productie instanties te herhalen. Als dit voor de ruimte van uw ontwikkeling niet realistisch is, zorg ervoor om de productie instantie (of identieke het opvoeren) in een verschillende netwerkcontext te testen.

Stap 9 Is de geografische plaats van de server ver weg van de gebruikers? Verplaats de server dichter naar de gebruikers.
Stappen 10 en 29 Onderzoek netwerklaag

Onderzoek de netwerklaag voor verzadiging en latentiekwesties.

Voor de auteurslaag, adviseert men dat de latentie 100 milliseconden niet overschrijdt.

Zie deze pagina voor meer informatie over tips voor het optimaliseren van prestaties.

Stap 11 Server dichter naar elkaar verplaatsen of één server per gebied toevoegen
Stap 12 Problemen met AEM server oplossen Controleer de volgende substappen in het diagram voor meer informatie.
Stap 13 Hardwarevereisten controleren Raadpleeg de documentatie bij Richtlijnen voor hardwaregrootte.
Stap 14 Controleren op frequente oorzaken van prestatieproblemen
Stap 15 Langzame aanvragen zoeken

U kunt controleren op langzame verzoeken door request.log te analyseren of door rlog.jar te gebruiken.

Zie deze pagina voor meer informatie over het gebruik van rlog.jar.

Zie Using rlog.jar om verzoeken met lange duurtijden te vinden.

Stap 16 Profielserver

Voor informatie over het profileren van hulpmiddelen kunt u met AEM gebruiken, zie Hulpmiddelen voor het Toezicht en het Analyseren van Prestaties.

Stap 17 Trage methoden zoeken in profielen
Stap 18 Gemeenschappelijke scenario's voor profilering Zie Specifieke scenario's analyseren in de sectie Prestaties optimaliseren.
Stap 19 100% CPU https://helpx.adobe.com/nl/experience-manager/6-3/sites-deploying/monitoring-and-maintaining.html#MonitoringPerformance
Stap 20 Onvoldoende geheugen
  1. Onvoldoende geheugen
  2. Mijn toepassing genereert fouten vanwege onvoldoende geheugen
  3. Geheugenproblemen analyseren op Helpx.
Stap 21 I/O schijf

Zie de sectie SchijfI/O in de documentatie van de Controle en van het Onderhouden.

Stappen 22 en 22.1 Cacheverhouding Zie De cacheverhouding van de verzender berekenen.

Stap 23 Langzame query's Beste praktijken voor Vragen en het Indexeren
Stap 24 Afstelling in opslagplaats
Stap 25 Workflows actief

Stap 26 MSM-infrastructuur

Aanbevolen werkwijzen voor beheer van meerdere sites

Stap 27 Afstemming van activa
  1. Assets Synchronization Service
  2. Meerdere DAM-instanties
  3. Tips voor het afstemmen van prestaties in artikelen hier en hier.
Stap 28 Niet-afgesloten sessies

Controleren op niet-afgesloten JCR-sessies

Stap 30 Verplaats de dispatcher dichter (voeg er één toe per "regio"?)
Stap 31 CDN vóór verzender gebruiken Dispatcher gebruiken met een CDN
Stap 32 Gebruik sessiebeheer op verzendniveau om AEM server te offloaden

Beveiligde sessies inschakelen

Stap 33 Verzoeken in cache plaatsen
  1. Algemene configuratie van verzender
  2. De Dispatcher Cache configureren

Hoe te om geheim voorgeheugenverhouding te verbeteren; aanvragen in cache kunnen plaatsen (best practices voor Dispatcher)

Houd ook rekening met de onderstaande instellingen om uw configuraties in cache te optimaliseren

  1. Een no-cache-regel instellen voor HTTP-aanvragen die niet GET zijn
  2. Vraagtekenreeksen configureren om niet cacheable te zijn
  3. Plaats geen URL's met ontbrekende extensies in cache
  4. Koppen voor cacheverificatie (mogelijk sinds Dispatcher versie 4.1.10)
Stap 34 Versie van verzender bijwerken

U kunt de meest recente versie van Dispatcher downloaden op deze locatie:

Koppeling volgen

Stap 35 Dispatcher configureren De Dispatcher configureren
Stap 36 Onvalidatie van cache controleren
Stappen 37 en 38 Lazy-loading Zie Gem-sessie over AEM webprestaties.
Stap 39 Gebruik pre-verbindt om verbindingsoverheadkosten te verminderen Zie de hierboven vermelde Gem-sessie. Ook wordt de extra documentatie vooraf gekoppeld op W3c: https://www.w3.org/TR/resource-hints/#dfn-preconnect
Stappen 40 en 41
Latentie en responstijd van externe hosts Onderzoek de latentie en reactietijd voor de externe gastheren.
Stappen 45
en 47

HTTP/2 gebruiken Zie de Gem-sessie voor de stappen 37,38 en 39. Ook, controleer dit forumpost op HTTP/2 steun.
Stap 49 Belastingsgrootte verkleinen Schakel Gziand in en maak de afbeeldingsgrootte kleiner.
Stappen 42 en 43 Keep-Alive

Is de Keep-Alive kopbal aanwezig in de verschillende verzoeken om verbindingen opnieuw te gebruiken? Anders zou het betekenen dat elk verzoek tot een andere verbindingsinstelling leidt, wat onnodige overheadkosten met zich meebrengt. (Standaard HTTP-aanvraaganalyse in de browser)

U kunt het hulpmiddel van de Server van de Volmacht controleren om Levende verbindingen van het Levensonderhoud te controleren.

Stap 44 Hoeveel verzoeken zijn er ingediend? Voer standaard HTTP- verzoekanalyse in browser uit.
Stap 46 Aantal aanvragen verminderen
  1. Bronnen samenvoegen (afbeeldingen, CSS-sprites, JSON, enz.)
  2. Clientlibs insluiten:
    1. Clientbibliotheekmappen maken - zie kop Insluiten gebruiken om verzoeken tot een minimum te beperken
Stap 48 Wat is de grootte van de lading? Standaard HTTP-aanvraaganalyse in de browser
Stappen 50 en 51 JS-code blokkeren https://docs.adobe.com/ddc/en/gems/aem-web-performance.html

Op deze pagina