안녕하세요. 내 CentOS 6 (64 비트) 서버에서 Java VM에 대해 정말 당황 스럽습니다. 쿼드 코어 CPU (하이퍼 스레딩), 16GB RAM 및 2TB 하드 드라이브 공간 (소프트웨어 RAID1)이있는 서버입니다. FAQ에 따르면 개발자가 사용하는 "일반적인 도구"에 대한 질문이 적절하기 때문에 여기에서 묻습니다. 희망을 갖고 누군가가 문제에 대해 밝힐 수 있기를 바랍니다.JVM은 CentOS 6에서 항상 100 % CPU 사용량을 초과합니다
서버에서 24 시간/일 Java 소프트웨어를 실행합니다. 오늘 (서버 로케일 자정 이후 자정 이후로 몇 시간이 걸렸습니다.이 달의 첫날이기 때문에 주목할만한 일입니다),이 소프트웨어에 연결 한 사용자가 갑자기 사용할 수 없게되었다는보고를 받았습니다. JVM이 중단되거나 다시 시작되지 않았습니다. 마지막 며칠 전에 다시 시작되었으며 그 이후 정상적으로 실행되었습니다 (CPU 사용량이 정상 5 % 이하인 경우).
이번에는 프로세스를 점검했을 때 서버에서 실행중인 다른 응용 프로그램과 씨름 할 수있는 모든 CPU 시간이 걸리거나 (100 % 이상보고 됨) 추신). 응용 프로그램을 중지하고 다시 시작하려고 시도했지만 실행되는 즉시 CPU 사용량이 즉시 100 % 이상으로 다시 증가합니다. 메모리 사용은 정상입니다. 다른 JVM 플래그를 사용해 보았습니다. 최신 버전의 소프트웨어를 다운로드하고 새로 설치하려고 시도했지만 도움이되지 않았습니다. 마지막으로 완전히 다른 Java 소프트웨어 조각을 다운로드하려고 시도했지만 서버에서 실행했을 때 동일한 문제가 발생했습니다.
소프트웨어를 다운로드하여 컴퓨터에서 실행하면 CPU 사용량이 정상적으로 나타납니다. 따라서 나는 서버에서 잘못되었다고 추측하고 있지만 그것이 어쩌면 될 수 있는지 상상할 수는 없다. 서버의 JVM은 표준 리포지토리 패키지 (사용자 정의가 전혀 필요 없음)에서 최신 버전입니다.
에 CentOS 릴리스/레드햇 릴리스에서2.6.32-131.21.1.el6.x86_64 #1 SMP Tue Nov 22 19:48:09 GMT 2011 x86_64 x86_64 x86_64 GNU/Linux
/시스템 출시 :
CentOS release 6.2 (Final)
무료 보고서 끝나면 uname -a에서
java version "1.6.0_24"
OpenJDK Runtime Environment (IcedTea6 1.11.3) (rhel-1.48.1.11.3.el6_2-x86_64)
OpenJDK 64-Bit Server VM (build 20.0-b12, mixed mode)
: 자바 -version에서
약 14.5GB의 여유 RAM. df는/home 파티션 (문제의 소프트웨어와 모든 파일이있는)에서 1.4tb의 사용 가능한 디스크 공간을보고합니다.
아이디어가 있으십니까? 더 많은 데이터가 필요한지 물어 보시고, 나에게 시도/확인 절차를 제안하십시오. 문제를 찾으면 JVM이 CentOS의 모든 CPU를 훔치는 데 어려움을 겪는 사람들이 몇 명 있었지만 그 중 누구도 내 문제와 일치하지 않는 것으로 나타났습니다.
오늘 두 번째 도약이있었습니다. 이제 타이머가 설정되기 1 초 * 만료됩니다! 재부팅하십시오. –
오. 나중에 답변으로 게시 할 수 있도록 작동하는지 알려 드리겠습니다. – Protected
그건 완전히 효과가 있습니다. 감사. 나는 모든 고객들을위한 서비스를 방해하기 때문에 구체적인 이유없이 먼저 서버를 재부팅 할 수 없다. – Protected