2016-12-01 5 views
1

Apache Ignite 응용 프로그램을 실행하고 있습니다. 내가 리눅스를 사용하여 메모리 사용량을 볼 때 free 나는 9.8GB로 메모리를 사용하고있다. 하지만 일식 매트을 사용하여 힙 덤프를 가져 가면 그 크기는 약 1.8GB에 불과합니다. 왜 이런 일이 일어나는 걸까요? ignite에 할당 된 기본 힙 메모리는 21GB입니다. GC 튜닝도하지 않았습니다.응용 프로그램에서 사용하는 메모리가 실제 힙 덤프 크기보다 큽니다.

+0

가능한 복제본 : http://stackoverflow.com/questions/561245/virtual-memory-usage-from-java-under-linux-too-much-memory-used – PeterMmm

답변

1

Eclipse가 힙 덤프를 사용하면 실제로 메모리에있는 오브젝트 만 볼 수 있도록 전체 가비지 콜렉션이 강제 실행됩니다. 힙이 매우 크고 사용 가능한 메모리가 여전히 많기 때문에 JVM 자체는이 작업을 수행하지 않습니다. BTW, 이것은 결국 상당한 시간 동안 Ignite 노드가 응답하지 않게 될 것입니다. 노드 당 10-12GB 이상을 할당하지 않을 것을 권장합니다.