jvm 튜닝 체계에 대한 간략한 분석

조정 시간:

  • 힙 메모리(구세대)는 설정된 최대 메모리 값까지 계속 증가합니다.
  • Full GC 횟수는 빈번합니다.
  • GC 일시 중지 시간이 너무 깁니다(1초 이상).
  • 응용 프로그램에 OutOfMemory와 같은 메모리 예외가 있습니다.
  • 응용 프로그램은 로컬 캐시를 사용하고 많은 메모리 공간을 차지합니다.
  • 시스템 처리량 및 응답성이 낮거나 저하됩니다.

튜닝 원리:

  • 대부분의 Java 애플리케이션은 서버에서 JVM 최적화가 필요하지 않습니다.
  • GC 문제를 일으키는 대부분의 Java 응용 프로그램은 잘못된 매개 변수 설정 때문이 아니라 코드 문제입니다.
  • 애플리케이션이 온라인 상태가 되기 전에 시스템의 JVM 매개변수를 최적(가장 적합)으로 설정하는 것을 고려하십시오.
  • 생성된 개체 수를 줄입니다.
  • 전역 변수 및 큰 개체의 사용을 줄입니다.
  • JVM 최적화는 최후의 수단입니다.
  • 실제 사용에서는 JVM 매개 변수를 최적화하는 것보다 코드를 최적화하기 위해 GC 상황을 분석하는 것이 좋습니다.

조정 대상:

  • GC 낮은 일시 중지;

  • GC 저주파;

  • 낮은 메모리 사용량;

  • 높은 처리량;

조정 단계:

  • GC 로그 및 덤프 파일을 분석하여 최적화가 필요한지 여부를 결정하고 병목 현상을 식별합니다.

  • jvm 튜닝의 정량적 목표를 결정합니다.

  • jvm 조정 매개변수를 결정합니다(이력 jvm 매개변수에 따라 조정됨).

  • 서버를 조정하고 조정 전과 후의 차이를 비교하고 관찰합니다.

  • 적절한 jvm 매개변수 구성을 찾는 지속적인 분석 및 조정

  • 가장 적합한 매개변수를 찾아 모든 서버에 적용하고 후속 조치를 취하십시오.

추천

출처blog.csdn.net/qq_40436854/article/details/120521573