컴퓨터 지식 네트워크 - 컴퓨터 학습 - CMS GC 매개 변수 구성에 대한 철저한 이해

CMS GC 매개 변수 구성에 대한 철저한 이해

최근 여러 HBase 클러스터에 대한 JVM 매개 변수를 정리하고 기본 CMS GC 구성인 것으로 밝혀졌으며 JVM 매개 변수를 튜닝하는 방법은 무시할 수 없는 주제다. 따라서 CMS GC 의 JVM 합리적인 매개 변수 구성을 찾기 위해 필자는 여러 커뮤니티 문장 및 관련 블로그를 참조하여 CMS 관련 지식 포인트와 CMS 기반 JVM 매개 변수 구성을 요약합니다.

CMS(Concurrent Mark Sweep, concurrent mark sweep, concurrent-marks-erasure) 는 현재 가장 널리 사용되는 JVM 가비지 수집기로, CMS 의 작업 과정을 설명하지 않고 다음 내용을 이해하는 데 도움이 되는 몇 가지 기본 요점만 기록합니다.

64G 이상의 힙인 경우 -Xmn 을 2g 로 조정할 수 있으며 다른 매개변수는 변경되지 않거나 미세 조정됩니다. 다음은 몇 가지 중요한 JVM 매개 변수에 대한 설명입니다.

다음 매개 변수 해결은 CMS GC 정책 사용을 기반으로 합니다. 여기서 CMS GC 는 오래된 가비지 수집을 나타내고 Young GC 는 신세대 가비지 수집을 나타냅니다.

① -Xmx, -Xms, -Xmn

-Xmx, -Xms 는 각각 JVM 힙의 최대 값, 초기화 크기를 나타냅니다. -Xmx 는-xx: maxheapsize 에 해당하고 -Xms 는-xx: initialheapsize 에 해당합니다.

-Xmn 은 신세대 크기를 나타내며-xx: -XX:NewSize,-xx: newsize 에 해당합니다. 이 매개 변수의 설정은 GC 성능에 큰 영향을 미치고, 작은 설정은 CMS GC 성능에 영향을 미치며, 큰 설정은 youu 에 영향을 미칩니다

② -Xss

는 스레드 스택의 크기를 나타내며-xx: threadstack size, 기본값 1M 에 해당하며 일반적으로 그렇게 많이 사용할 수 없습니다. 권장 값은 256k 입니다.

③-xx: Survivor ratio

survivor zone 에 대한 신생대 Eden zone 의 비율, 기본값 8

④-xx:+useParNewgc,-xx:+useconcmarksweepgc

는 각각 병렬 수집기 parnew 를 사용하여 신생대 가비지 수집을 나타내고

⑤-xx: parallelgcthreads,-xx: parallelcmsthreads

는 각각 Young GC 와 CMS GC 가 일할 때

⑥-xx: maxtenuringthreshold

< p 너무 작게 설정하면 CMS GC 성능에 심각한 영향을 줄 수 있으므로 기본값을 사용하는 것이 좋습니다.

⑦-xx:+useCMScompactatfullcollection

CMS GC 는 메모리 조각을 생성하고 전체 GC 에서만 메모리 조각 압축을 수행하므로 이 매개변수는 전체 GC 를 켤 때의 압축 기능을 나타내며 메모리 조각화를 줄입니다.

⑧-xx:+usecmsinitiatingoccupancyonly,-xx: cmsinitiatingoccupancyfraction

일반적으로 70~80 (백분율) 으로 설정되고, 너무 작게 설정하면 CMS GC 검색 빈도가 증가하고, 너무 크게 설정하면 동시 모드가 실패하거나 승진이 실패할 수 있습니다. 기본값은 -1 로 CMS GC 가 JVM 에 의해 자동으로 트리거됨을 의미합니다.

-xx:+usecmsinitiatingoccupancyonly 는 CMS GC 가 CMSInitiatingOccupancyFraction 을 기반으로 트리거되었음을 나타내며, 이 매개 변수를 설정하지 않으면 JVM 은 cmsinition 을 기반으로 합니다 두 매개변수를 모두 설정하는 것이 좋습니다.

⑨-xx:+CMSclassunloadingenabled

는 영구 세대 공간 고갈로 인한 전체 GC 를 피하기 위해 CMS 를 켜는 것을 의미합니다

온라인 도구

GC 온라인 매개변수 검사 및 최적화:

GC 온라인 로그 분석:/2016/08/09/h base-com Euey8visBvINQNOF0AiACQ

현재 우리는 주로 CMS 를 사용하고 있지만, 사실 비교적 큰 heap 는 G1 가비지 수집기를 추천한다. G1 에 대해서는 뒷부분에서 소개하겠습니다. 당신의 의견을 남기신 것을 환영합니다.

이전 문장 선택

◆ 아파치 후디 버전 0.5.1 무거운 릴리스

◆ 쉘 찾기 Flink 기반 실시간 플랫폼 구축

◆ 샤오미 스트리밍 플랫폼 아키텍처의 진화와 실천

이 문장 마음에 드시면 보고 전달하는 것이 모두 격려입니다. 승인을 받으시길 기대하십니까? (_-)

上篇: 삼성휴대폰 719 화면 36 도 회전 안 하면 어떡해 下篇: 가연의 초대장은 무엇입니까? 초대장은 어떻게 작성하나요?
관련 내용