April 23, 2020
Estimated Post Reading Time ~

AEM Sites Performance Issues

Symptoms of a performance issue
  • Slow loading of pages
  • Slow creation or editing of pages
  • AEM response times are slow
  • AEM is not responding for some requests
  • The request.log on AEM shows slow response times
What causes performance issues
  • Thread contention - long-running requests such as slow searches, write-heavy background jobs, moving of whole branches of site content, etc.
  • High CPU utilization
  • Expensive requests such as expensive searches or inefficient application code, components, etc.
  • Lack of proper maintenance
  • Insufficient dispatcher caching
  • Lack of CDN
  • Lack of browser caching
  • Too many scripts loaded on-page and loaded at top of page
  • CSS loaded throughout page instead of in the HTML head
  • Insufficient server sizing or incorrect architecture
  • Memory issues (see below)
How to analyze the performance issue
1. Capture a series of thread dumps and analyze them
2. Check at the OS level if the AEM java process is causing high CPU utilization
Linux: use the top command to check CPU utilization.
Window: use the Windows Task Manager

If AEM is causing high CPU utilization then run the out-of-the-box profiling tool for a few minutes and analyze the result.

3. Analyze the request.log file for any slow requests

4. Review your system maintenance procedures and ensure that you are doing proper maintenance on AEM including the following:
Revision Clean Up (MongoMK and Database DocumentNodeStore's only) - daily or more frequent
Offline Tar Compaction (TarMK only) - bi-weekly
Data Store Garbage Collection (Systems with FileDataStore or S3 DataStore only) - weekly
Workflow Purge - weekly
Version Purge - weekly
AuditLog Purge - weekly

See this article for more details on AEM maintenance.
5. Review caching strategies implemented at the AEM dispatcher level. The best place to start is to gain an understanding of when and how the dispatcher caches files and invalidates cached files.
6. Review your site's caching.
7. Use client-side site analysis tools such as the Audits feature in Google Chrome browser Developer Tools panel. These tools will give you recommendations on client-side performance improvements.

Solutions to common performance issues
Refer to this article for detailed steps on ways to optimize performance.
Review the performance tuning tips


By aem4beginner

No comments:

Post a Comment

If you have any doubts or questions, please let us know.