在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/Java/ jvm內存不足導致應用僵死問題咨詢

jvm內存不足導致應用僵死問題咨詢

頁面上操作無反應 應用好像僵死

在服務器上執(zhí)行Top

  PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND
 2299 root      20   0 2621076 727936  16544 S 99.9 38.6  67:08.05 java
 

看到CPU100% 都是mongo 查詢和插入的操作 沒有計算密集型的操作 怎么會CPU100%呢

jstack看到的幾乎都是BLOCKED狀態(tài)

Thread 21304: (state = BLOCKED)

查看 jmap -heap 2299

Heap Usage:
New Generation (Eden + 1 Survivor Space):
   capacity = 144703488 (138.0MB)
   used     = 132853872 (126.69932556152344MB)
   free     = 11849616 (11.300674438476562MB)
   91.81110547936481% used
Eden Space:
   capacity = 128647168 (122.6875MB)
   used     = 128647168 (122.6875MB)
   free     = 0 (0.0MB)
   100.0% used
From Space:
   capacity = 16056320 (15.3125MB)
   used     = 4206704 (4.0118255615234375MB)
   free     = 11849616 (11.300674438476562MB)
   26.199677136479593% used
To Space:
   capacity = 16056320 (15.3125MB)
   used     = 0 (0.0MB)
   free     = 16056320 (15.3125MB)
   0.0% used
tenured generation:
   capacity = 321585152 (306.6875MB)
   used     = 244174704 (232.86314392089844MB)
   free     = 77410448 (73.82435607910156MB)
   75.92847570275882% used

懷疑是內存不足導致應用僵死
為什么會僵死 而不是直接拋內存溢出(OutOfMemory)異常呢?為什么CPU會100%呢?

回答
編輯回答
拽很帥

可能是代碼不停的創(chuàng)建沒用的對象,不停的觸發(fā)GC回收這些沒用的對象,導致程序僵死,查查看GC回收的是什么對象。

2017年5月29日 21:32