AEM - 내장 CPU 프로파일러를 사용한 Java 성능 문제 해결

Java 프로세스에 의한 높은 CPU 사용률은 서버 작업의 속도를 저하시킬 수 있습니다. 이 문서에서는 내장 CPU 프로파일러를 사용한 Java 성능 문제 해결을 안내합니다.

설명 description

환경

Adobe Experience Manager(버전 6.4 및 6.5)

문제/증상

일부 서버 프로세스는 매우 느리지만 차단되지 않습니다.

서버 OS는 AEM Java 프로세스의 높은 CPU 사용률을 보여줍니다.

해결 방법 resolution

해결 단계:

AEM 6.x에는 간단한 CPU 프로파일링 도구가 포함되어 있습니다.

  1. 다음 URL을 엽니다. https://aem-host:port/system/console/profiler
  2. 옵션 을 확장합니다.
  3. 샘플 간격(밀리초)을 설정하거나 기본값을 사용하십시오.
  4. 스택 추적 깊이 을(를) 설정합니다(권장 값: 최소 50).
  5. 수집 시작 을 클릭합니다.
  6. CPU 사용률이 높은 동안 데이터를 수집하려면 3~10분 정도 기다리십시오.
  7. 데이터를 수집하려면 중지 를 클릭하십시오(출력이 같은 페이지에 표시됨).

프로파일러가 스레드를 실행하는 동안 스택 추적을 수집합니다(스레드에서 CPU 시간이 많이 소요됨). 스택을 수집하는 동안 중복 추적을 찾아 가장 흔한 것부터 가장 적은 것까지 정렬합니다.
원인
CPU 사용률이 높은 원인은 여러 가지가 있습니다. 다음은 몇 가지 예입니다.

  • 비효율적인 애플리케이션 코드
  • 대형 콘텐츠 구조 순회
  • JVM 가비지 수집에 많은 시간을 소비하는 높은 애플리케이션 메모리 사용률
recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f