AEM_performance Analysis from top to Bottom for each layers of the system

Reference Links
StepTitleResources
Step 0Analyze Request Flow
You can use standard HTTP request analysis in the browser to analyze the request flow. For more info on how to do this on Chrome, see:
Step 2Are requests coming from external hosts?You can use standard HTTP request analysis in the browser to analyze the request flow. See the above links on how to do this on Chrome.
Step 3Can the requests be cached?For more information on cacheable requests and general Dispatcher performance optimization advice, see Dispatcher Performance Optimization.
Step 4Are requests coming from the Dispatcher?
Check the Dispatcher debugging documentation to see if the requests are cached properly.
Step 5Is the Dispatcher trying to authenticate each request via AEM?Check if the dispatcher sends HEAD requests to AEM for authentication before delivering the cached resource. You can do this by looking for HEAD requests in the AEM access.log. For more information, see Logging.
Step 6Is the geographic location of the Dispatcher far away from the users?Move the Dispatcher closer to the users.
Step 7Is the network layer of the Dispatcher OK?
Investigate the network layer for saturation and latency issues.

Step 8Is the slowness reproducible with a local instance?
Use Tough Day to replicate "real world" conditions from the production instances. If this is not realistic for the slace of your development, make sure to test the production instance (or an identical staging one) in a different network context.
Step 9Is the geographical location of the server far away from the users?Move the server closer to the users.
Steps 10 and 29Investigate network layer
Investigate the network layer for saturation and latency issues.
For the author tier, it is recommended that the latency does not surpass 100 milliseconds.
For more information on performance optimization tips, see this page.
Step 11Move server closer or add one per region 
Step 12Troubleshoot AEM serverCheck the following sub steps in the diagram for more information.
Step 13Check hardware requirementsCheck the documentation on Hardware Sizing Guidelines.
Step 14Check for frequent causes of performance issues 
Step 15Find slow requests
You can check for slow requests by analysing the request.log or by using rlog.jar.
For more information about using rlog.jar, see this page.

Step 16Profile server
For information about profiling tools you can use with AEM, see Tools for Monitoring and Analyzing Performance.
Step 17Find slow methods in profiling 
Step 18Common scenarios of profilingSee Analyzing Specific Scenarios in the Performance Optimization section.
Step 19100% CPUhttps://helpx.adobe.com/experience-manager/6-3/sites/deploying/using/monitoring-and-maintaining.html#MonitoringPerformance
Step 20Out of memory
  1. Out Of Memory
  2. My application throws out-of-memory errors
  3. Analyze Memory Problems on Helpx.
Step 21Disk I/O
See the Disk I/O section in the Monitoring and Maintaining documentation.
Steps 22 and 22.1Cache ratioSee Calculating the Dispatcher Cache Ratio.
Step 23Slow queriesBest Practices for Queries and Indexing
Step 24Repository tuning
Step 25Workflows running

Step 26MSM Infrastructure
Step 27Assets tuning
  1. Assets Synchronization Service
  2. Multiple DAM Instances
  3. Performance tuning tips articles here and here.
Step 28Unclosed sessions


Step 30Move dispatcher closer (add one per "region"?) 
Step 31Use CDN in front of dispatcherUsing Dispatcher with a CDN
Step 32Use session management at the dispatcher level to offload AEM server
Step 33Make requests cacheable
  1. General Dispatcher Configuration
  2. Configuring the Dispatcher Cache
How to improve cache ratio; make requests cache-able (Dispatcher best practices)
Also, take into consideration the below settings in order to optimize your caching configurations
  1. Set a no-cache rule for HTTP requesrst that are not GET
  2. Configure query strings to not be cacheable
  3. Do not cache URLs with missing extensions
  4. Cache authentication headers (possible since Dispatcher version 4.1.10)
Step 34Upgrade dispatcher versionYou can download the latest Dispatcher version at this location:
https://www.adobeaemcloud.com/content/companies/public/adobe/dispatcher/dispatcher.html
Step 35Configure dispatcherConfiguring the Dispatcher
Step 36Check cache invalidation
Steps 37 and 38Lazy-loadingSee the Gem Session on AEM Web Performance.
Step 39Use pre-connect to reduce connection overheadSee the Gem Session indicated above. Also, additional documentation preconnect on W3c:https://www.w3.org/TR/resource-hints/#dfn-preconnect
Steps 40 and 41External hosts latency and response timeInvestigate the latency and response time for the external hosts.
Steps 45
and 47
Using HTTP/2See the Gem Session for steps 37,38 and 39. Also, check out this forum post on HTTP/2 support.
 
Step 49Shrink payload sizeEnable Gzip and shrink the image size.
Steps 42 and 43Keep-Alive
Is the Keep-Alive header present in the different requests to re-use connections? Otherwise, it would mean that each requests leads to another connection establishment, which introduces unnecessary overhead. (Standard HTTP request analysis in the browser)
You can check the Proxy Server tool to check for Keep-Alive connections.
Step 44How many requests are made?Perform standard HTTP request analysis in the browser.
Step 46Reduce number of requests
  1. Concatenate resources (images, CSS sprites, JSON, etc.)
  2. Clientlibs embedding:
    1. Creating Client Library Folders - see heading Using embedding to minimize requests
Step 48What is the size of the payload?Standard HTTP request analysis in the browser
Steps 50 and 51JS code blockinghttps://docs.adobe.com/ddc/en/gems/aem-web-performance.html

1 comment:

  1. Well stated, you have furnished the right information that will be useful to everybody. Thank you for sharing your thoughts. Security measures protect your company not only from data breaches, but also from excessive financial losses, a loss of people's trust, and potential risks to brand reputation and future benefits.
    IT infrastructure services
    Cybersecurity Service Provider

    ReplyDelete