成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Java服務,內存OOM了,如何快速定位?

開發 開發工具 后端
某Java服務(假設PID=10765)出現了OOM,如何快速定位?具體的,可以按照以下步驟,使用以下工具排查。

某Java服務(假設PID=10765)出現了OOM,如何快速定位?

Java服務出現OOM,最常見的原因是:

  • 內存確實分配過小,內存確實不夠用;
  • 某一個對象被頻繁申請,卻沒有釋放,內存不斷泄漏,導致內存耗盡;
  • 某一個資源被頻繁申請,系統資源耗盡,例如:不斷創建線程,不斷發起網絡連接;

更具體的,可以按照以下步驟,使用以下工具排查。

一、確認是不是內存本身就分配過小

方法:jmap -heap 10765

如上圖,可以查看新生代,老生代堆內存的分配大小以及使用情況,看是否本身分配過小。

二、找到最耗內存的對象

方法:jmap -histo:live 10765 | more

如上圖,輸入命令后,會以表格的形式顯示存活對象的信息,并按照所占內存大小排序:

  • 實例數;
  • 所占內存大小;
  • 類名;

是不是很直觀?對于實例數較多,占用內存大小較多的實例/類,相關的代碼就要針對性review了。

畫外音:需要說明的是,jmap -histo:live會執行一次FGC,如果仍無法定位,可dump內存,通過Java內存分析工具MAT(Memory Analyzer Tool)線下進行分析。

上圖中占內存最多的對象是RingBufferLogEvent,共占用內存18M,屬于正常使用范圍。

如果發現某類對象占用內存很大(例如幾個G),很可能是類對象創建太多,且一直未釋放。例如:

  • 申請完資源后,未調用close()或dispose()釋放資源;
  • 消費者消費速度慢(或停止消費了),而生產者不斷往隊列中投遞任務,導致隊列中任務累積過多;

三、確認是否是資源耗盡

工具:

  • pstree
  • netstat

查看進程創建的線程數,以及網絡連接數,如果資源耗盡,也可能出現OOM。 這里介紹另一種方法,通過

  1. /proc/${PID}/fd 
  2. /proc/${PID}/task 

可以分別查看句柄詳情和線程數。

例如,某一臺線上服務器的sshd進程PID是9339,執行:

如上圖,sshd共占用了四個句柄:

  • 0 -> 標準輸入;
  • 1 -> 標準輸出;
  • 2 -> 標準錯誤輸出;
  • 3 -> socket(容易想到是監聽端口);

sshd只有一個主線程PID為9339,并沒有多線程。

所以,只要

  1. ll /proc/${PID}/fd | wc -l 
  2. ll /proc/${PID}/task | wc -l (效果等同pstree -p | wc -l) 

就能知道進程打開的句柄數和線程數。

【本文為51CTO專欄作者“58沈劍”原創稿件,轉載請聯系原作者】

戳這里,看該作者更多好文

 

責任編輯:趙寧寧 來源: 51CTO專欄
相關推薦

2019-11-05 08:24:34

JavaOOM快速定位

2017-08-21 23:50:45

線上內存OOM

2022-10-10 08:05:34

線程池OOM問題

2022-06-27 11:20:13

工具內存GO

2022-02-07 08:55:57

Go程序代碼

2020-03-31 17:05:39

Redis熱 key代理

2023-03-20 17:27:54

Cpukafka

2023-10-30 22:23:12

Cacherkube版本

2023-03-10 08:24:27

OOMdump線程

2023-08-24 22:13:31

2017-08-19 23:21:14

線上CPU定位

2017-07-07 16:30:37

JavaOOM KillerBecome

2023-10-10 15:26:30

內存泄露OOM

2019-07-28 18:30:52

MySQL日志數據庫

2025-06-11 02:02:00

2017-08-14 16:36:23

ASActivity內存

2023-02-26 10:18:24

數據庫SQL語句

2010-03-01 13:17:46

WCF單向服務

2015-07-22 14:59:31

2017-11-09 16:07:00

Web應用內存
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 成人小视频在线观看 | 国产黄色一级片 | 91视频入口 | 久久久久无码国产精品一区 | 久久精品无码一区二区三区 | www.操.com| 国产美女视频一区 | 中文字幕第十五页 | 国产精品久久久久久久久久久久久久 | 久久久久久久91 | 午夜精品一区二区三区在线视频 | 7777在线视频 | 日本视频免费观看 | 成人深夜福利在线观看 | 国产91久久精品一区二区 | 国产激情三区 | 国产做爰 | 国产乱码久久久久久 | 久久人| 免费看国产精品视频 | 欧美精品一区二区在线观看 | 久久国产免费看 | 美国a级毛片免费视频 | 国产a级毛片| 97国产成人| 国产综合欧美 | 精品日韩电影 | 97综合在线 | 欧洲色综合 | 久草视频2| 日韩一区二区三区在线看 | 在线播放第一页 | 久久久久久久久91 | 日韩电影在线 | 青青草国产在线观看 | 亚洲精品福利视频 | 午夜影院网站 | 三级成人在线观看 | 成人在线视频网 | 四虎在线播放 | 成人午夜精品 |