it-swarm-ko.tech

Java에서 hsperfdata 파일을 만들지 못하게하려면 어떻게해야합니까?

Linux에서 실행되는 Sun의 JDK를 사용하는 Java 응용 프로그램을 작성 중입니다. /tmp/hsperfdata_username 디렉토리. 방지하고 싶습니다. Java이 파일을 만드는 것을 막을 방법이 있습니까?

44
c-had

JVM 옵션 -XX : -UsePerfData 시도

추가 정보

다음은 링크 https://docs.Oracle.com/javase/8/docs/technotes/tools/unix/Java.html 에서 도움이 될 수 있습니다.

-XX:+UsePerfData

    Enables the perfdata feature. This option is enabled by default
    to allow JVM monitoring and performance testing. Disabling it 
    suppresses the creation of the hsperfdata_userid directories. 
    To disable the perfdata feature, specify -XX:-UsePerfData.
32
Kyle Renfro

JVM 옵션 사용 -XX:-UsePerfData.

다른 답변에서 알 수 있듯이 이것은 성능에 부정적인 영향을 미치지 않습니다.

기본적으로 jvmstat 인스 트루먼 테이션은 HotSpot JVM에서 켜져 있습니다. JVM 옵션 -XX:-UsePerfData는 끕니다. 계측기를 끄면 성능 (사소한 양)이 향상 될 것이라고 추측합니다.

따라서 jvmstat 계측을 끄는 단점은 성능 모니터링 정보가 손실된다는 것입니다.

jvmstat는 여기에 설명되어 있습니다 http://Java.Sun.com/performance/jvmstat/

다음은 on jvmstat-옵션 -XX:+UsePerfData-성능이 저하됩니다. http://www.theserverside.com/discussions/thread.tss?thread_id=338
(jvmstat가 " '항상 켜기'로 설계되었지만 성능에 미미한 영향을 미치므로"아마도 아닐 것입니다. "

31
Jon Stafford

끄지 말고 Java.io.tmpdir 위치를 변경하십시오. Java 시작 명령에 -Djava.io.tmpdir =/mydir/somewhere/else /를 추가하면 파일이 사용자가 제어하는 ​​위치에있게됩니다.


@simonc의 주석을 참고하십시오. 이것은 일부 버전의 JVM에서만 작동하며 더 이상 지원되지 않습니다. http://bugs.Sun.com/view_bug.do?bug_id=6447182 , http://bugs.Sun.com/view_bug.do?bug_id=6938627 참조 자세한 내용은 http://bugs.Sun.com/view_bug.do?bug_id=7009828 를 참조하십시오.

4
Mack

Mack의 답변에 대한 부록 (17:12의 Mar 25 '11에 답변 됨)으로, Java.tmp.dir 옵션은 Java 8 이후 더 이상 사용할 수없는 것 같습니다. --- 정보를 참조하십시오 : https://bugs.Java.com/view_bug.do?bug_id=8189674

따라서 -XX : -UsePerfData를 사용하여 옵션을 비활성화하면 hsperfdata_ * 파일이없는 유일한 옵션 인 것 같습니다.

1
user6494409

도 있습니다 "-XX:+PerfDisableSharedMem" 옵션 (Sun에서 권장)은 "-XX:-UsePerfData" 옵션.

1
Zweiberg

편집 : 정보 정리 및 요약

요약:

  • 버그가 아닌 기능
  • -XX : -UsePerfData로 설정하면 성능이 저하 될 수 있습니다.

관련 정보 :

1
svrist

Svrist의 링크에서 :

http://Java.Sun.com/performance/jvmstat/faq.html 의 첫 번째 항목은 전체 기능을 비활성화하기 위해 해제 할 수있는 옵션 인 -XX : -UsePerfData를 언급합니다.

1
Stu Thompson

filed bug report 에 따르면 해결 방법이 있습니다.

이 문서화되지 않은 옵션은 성능 데이터 기능을 비활성화합니다.
-XX : -UsePerfData

그것은 버그가 아니라 기능이라는 것을 언급 할 가치가 있습니다. 위의 해결 방법은 기능을 비활성화합니다.

1
SCdF