Saya baru-baru ini membuat heapdump dalam format hprof ketika server jboss saya berjalan dengan xms 4096m dan xmx 4096m dan permsize 512m.
File hprof yang dihasilkan lebih dari 5GB. Saat saya memuat heapdump di visualvm, mat analizer, atau kit Anda, saya hanya melihat total byte sekitar 1 GB. Saya sudah mencoba mengubah cakupan jangkauan di perangkat Anda tetapi tidak menunjukkan lebih dari 1 gb.
Adakah yang tahu apa yang menyebabkan perbedaan besar dalam ukuran file vs ukuran heapdump yang ditampilkan?
ps: Saya menggunakan jdk1.6.0_23
Sayangnya saya tidak diperbolehkan mengirimkan screenshot di sini.
Pada sistem file, ukuran hprof adalah 5.227.659 kb dan di kit Anda dinyatakan:
Objek: 9.738.282 / ukuran dangkal 740 mb / ukuran dipertahankan: 740 mb String yang dapat dijangkau di antaranya: 6.652.515 (68%) / ukuran dangkal: 381 mb (51%) / ukuran dipertahankan: 381 MB (51%)
Ukuran terbesar yang dipertahankan adalah byte[] dari 206.810.176