Prestatieschema performance-tree

Scope scope

Het volgende diagram wordt bedoeld om raad over de stappen te verstrekken om prestatieskwesties problemen op te lossen. Het wordt in vijf secties gesplitst, zodat u het gemakkelijk kunt lezen.

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

Vereisten en veronderstellingen prerequisites-and-assumptions

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 (Verzender, externe gastheer, of AEM) verantwoordelijk is voor de prestatieskwestie dan bepaalt welk gebied (server of netwerk) zou moeten worden onderzocht.

Sectie 1 section

chlimage_1-103

Sectie 2 section-1

chlimage_1-104

Afdeling 3 section-2

chlimage_1-105

Sectie 4 section-3

chlimage_1-106

Afdeling 5 section-4

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 deze analyse op Chrome te doen, zie:

https://developer.chrome.com/docs/devtools/

Stap 2
Worden verzoeken afkomstig van externe hosts?
U kunt standaard HTTP- verzoekanalyse in browser gebruiken om de verzoekstroom te analyseren. Zie bovenstaande koppelingen voor deze analyse op Chrome.
Stap 3
Kunnen de verzoeken in de cache worden geplaatst?
Voor meer informatie over cacheable verzoeken en algemene het optimaliseren van de prestaties van de Verzender advies, zie Optimalisatie van de prestaties van de verzender.
Stap 4
Zijn verzoeken afkomstig van de Dispatcher?
Om te zien of zijn de verzoeken behoorlijk in het voorgeheugen ondergebracht, controleer Debugging van de afzender documentatie.
Stap 5
Probeert de Dispatcher elk verzoek via AEM te verifiëren?
Controleren of de Dispatcher verzendt HEAD verzoeken om AEM voor authentificatie alvorens het caching middel te leveren. Zoeken naar HEAD verzoeken in de AEM access.log. Zie voor meer informatie Logboekregistratie.
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?
Gebruiken Grove dag om "echte" omstandigheden van de productie-instanties te repliceren. Als dit scenario voor de ruimte van uw ontwikkeling niet realistisch is, zorg ervoor om de productieinstantie (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 voor meer informatie over tips voor het optimaliseren van prestaties deze pagina.

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 op Richtlijnen voor hardwareaanpassing.
Stap 14
Controleren op frequente oorzaken van prestatieproblemen
Stap 15
Langzame aanvragen zoeken

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

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

Zie Aanvragen met lange tijdsduur zoeken met rlog.jar.

Stap 16
Profielserver
Voor informatie over het profileren van hulpmiddelen kunt u met AEM gebruiken, zie Gereedschappen voor het bewaken en 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://experienceleague.adobe.com/docs/experience-manager-release-information/aem-release-updates/previous-updates/aem-previous-versions.html?lang=nl-NL
Stap 20
Onvoldoende geheugen
  1. Onvoldoende geheugen
  2. Mijn toepassing genereert fouten vanwege onvoldoende geheugen
  3. Geheugenproblemen analyseren.
Stap 21
I/O schijf
Zie de I/O schijf in de documentatie voor toezicht en onderhoud.
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 op meerdere locaties
Stap 27
Afstemming van activa
  1. Assets Synchronization Service
  2. Meerdere DAM-instanties
  3. Tips voor het afstemmen van prestaties, artikel hier.
Stap 28
Niet-afgesloten sessies
Controleren op niet-afgesloten JCR-sessies
Stap 30
Dispatcher dichterbij verplaatsen (één object toevoegen per regio?)
Stap 31
CDN vóór Dispatcher gebruiken
Dispatcher gebruiken met een CDN
Stap 32
Als u de AEM server wilt offloaden, gebruikt u sessiebeheer op Dispatcher-niveau
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; maak verzoeken geheim voorgeheugen-geschikt (de beste praktijken van de Verzender)

Overweeg ook de onderstaande instellingen om uw cacheconfiguraties te optimaliseren

  1. Een no-cache-regel instellen voor een HTTP-aanvraag die geen GET is
  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 Dispatcher upgraden

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 Gem-sessie hierboven. Daarnaast vindt u aanvullende documentatie vóór de verbinding op W3c: https://html.spec.whatwg.org/#linkTypes
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, uitchecken dit forumbericht over HTTP/2-ondersteuning.
Stap 49
Belastingsgrootte verkleinen
Gzip inschakelen en de afbeeldingsgrootte verkleinen.
Stappen 42 en 43
Keep-Alive

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

U kunt de Proxyserver, gereedschap om te controleren op Live-verbindingen.

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)
  2. Clientlibs insluiten:
    1. Clientbibliotheekmappen maken - zie kop Insluiten gebruiken om verzoeken te minimaliseren
Stap 48
Wat is de grootte van de lading?
Standaard HTTP-aanvraaganalyse in de browser
Stappen 50 en 51
JS-code blokkeren
https://experienceleague.adobe.com/docs/experience-manager-gems-events/gems/gems2016/aem-web-performance.html?lang=nl-NL
recommendation-more-help
19ffd973-7af2-44d0-84b5-d547b0dffee2