이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 67240|회답: 2

[출처] JAVA 오류는 VM 오류 초기화 중에 발생했습니다

[링크 복사]
게시됨 2017. 8. 14. 오후 4:49:22 | | | |
VM 초기화 중에 오류가 발생했습니다
3145728KB 객체 힙을 위한 충분한 공간을 예약하지 못했습니다



최근에 자바 프로그램 작업을 하고 있습니다. 원래 저는 자바의 메모리 관리를 항상 좋아했어요. 메모리 할당에 대해 걱정할 필요 없이, 그냥 할당만 하면 가비지 콜렉터가 메모리를 되찾아줍니다. 이제 프로그램이 방대한 데이터를 가지고 개발되었고, 속도를 위해 모든 정보를 메모리에 로드할 예정입니다. 이를 통해 빠른 응답을 보장할 것입니다. 저는 여전히 메모리를 계속 세면서 제 데이터 양을 생각하고 있는데, 처음에는 이 정도면 충분할 것 같습니다(제 기기는 4G 메모리를 사용하지만, 윈도우는 3.5G를 인식하지만 현재 데이터 용량과 비교하면 괜찮을 것 같습니다).

예상치 못하게도 첫 번째 실험 프로그램은 몇 시간 동안 실행되었고 메모리 외 예외(Out of Memory Exception)를 만났습니다. 제 가상 머신 설정을 보니 -Xms512M -Xmx1024M을 설정했습니다. 생각할 겨를도 없이 바로 -Xms512M -Xmx2048M으로 변경했는데, 그 결과 오브젝트 힙을 위한 공간을 충분히 예약할 수 없었습니다. 프로그램이 일어나지 못해. 그때서야 원래 최대 메모리에도 한계가 있다는 것을 깨달았습니다. 인터넷을 검색해 보니 이 문제를 다룬 많은 글들을 찾았습니다. 마지막으로, BEA DEV2DEV 포럼에서 가장 유용한 글을 찾았습니다

여기서 진행자 YuLimin이 테스트를 진행했고 다음과 같은 결론에 도달했습니다:

회사 JVM 버전 최대 메모리(메가) 클라이언트 최대 메모리(메가) 서버

태양 1.5.x 1492 1520

SUN 1.5.5 (Linux) 2634 2660

태양 1.4.2 1564년 1564년

SUN 1.4.2 (Linux) 1900 1260

IBM 1.4.2(Linux) 2047 해당 없음

BEA JRockit 1.5 (U3) 1909 1902

지금은 JDK1.6.0_05 사용 중이고, 테스트해봤어요. 클라이언트 상태에서 가장 큰 문제는 제 JDK가 -Server 매개변수를 인식하지 못해 서버 상태를 테스트할 수 없다는 점입니다. 추정치는 거의 비슷합니다.

SUN 1.6.0 1442 노

자바에서 대용량 메모리를 사용하는 것은 불가능한 것 같습니다. 일반적인 말은 메모리가 너무 크면 가비지 컬렉션 시간이 길어진다는 것입니다. 이 역시 이해할 만합니다. 일반적으로 메모리가 부족할 때 수집되며, 2G 메모리 스캔은 1G보다 훨씬 느리고, 메모리 객체도 더 많기 때문에 추정 관계가 기하급수적으로 증가하고 있습니다.

아래에는 유리민의 시험 방법과 시험 기록이 첨부되어 있습니다.

시험 방법:명령줄 내 java -XmxXXXXM -version 명령어로 테스트해 보세요, 그리고 XXXX의 값을 점차 증가시키는데, 정상적으로 실행되면 지정된 메모리 크기가 사용 가능하다는 의미이며, 그렇지 않으면 오류 메시지가 출력됩니다.





JVM의 최대 지원 메모리를 테스트한 후 시스템 내 환경 변수를 설정하세요

변수 이름: _JAVA_OPTIONS
가치: - Xmx1G






이전의:jQuery 전체 화면 플러그인 "jQuery Fullscreen Plugin"이 사용됩니다
다음:SSL, OV, DV, EV 인증서의 차이점
 집주인| 게시됨 2017. 8. 14. 오후 4:51:30 |
자바 버전 "1.8.0_144"
Java(TM) SE 런타임 환경 (빌드 1.8.0_144-b01)
Java HotSpot(TM) 64비트 서버 VM (빌드 25.144-b01, 혼합 모드)



Java 버전 "1.8.0_144" 64비트 서버 사이드 모드, 80G 메모리, 문제 없습니다

 집주인| 게시됨 2020. 9. 1. 오후 10:29:04 |
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com