linux布置微服務(wù)導(dǎo)致內(nèi)存不足

現(xiàn)象:前段時間發(fā)現(xiàn)某臺開發(fā)機上各個微服務(wù)進程占用內(nèi)存很高硕旗,經(jīng)常出現(xiàn)某個服務(wù)掛掉的現(xiàn)象,這里記錄下解決思路方案,僅供參考。

查看發(fā)現(xiàn)服務(wù)器剩余內(nèi)存很小

free -m 
在這里插入圖片描述

這是臺測試服務(wù)器紊遵,內(nèi)存本來就小,但是運行的服務(wù)挺多塑猖,包括一個微服務(wù)和springboot項目积仗,本身微服務(wù)就很占內(nèi)存品姓,幾個微服務(wù)項目的服務(wù)直接就把服務(wù)器內(nèi)存占光了,所有新增了springboot項目后經(jīng)常出現(xiàn)某個服務(wù)掛掉的現(xiàn)象箫措。
所以想著看看能不能較少某個服務(wù)的分配內(nèi)存來增加項目存活的可能性腹备。

解決問題之前,先復(fù)習(xí)下幾個基礎(chǔ)知識斤蔓。

1植酥、什么是RES?top命令經(jīng)诚夷担看到的

在這里插入圖片描述

RES:resident memory usage 常駐內(nèi)存
(1)進程當(dāng)前使用的內(nèi)存大小友驮,但不包括swap out
(2)包含其他進程的共享
(3)如果申請100m的內(nèi)存,實際使用10m驾锰,它只增長10m卸留,與VIRT相反
(4)關(guān)于庫占用內(nèi)存的情況,它只統(tǒng)計加載的庫文件所占內(nèi)存大小
RES = CODE + DATA

2椭豫、JVM內(nèi)存模型

在這里插入圖片描述
所以JVM進程內(nèi)存大小大致為:
非heap(非heap=元空間+棧內(nèi)存+…)+heap+JVM進程運行所需內(nèi)存+其他數(shù)據(jù)

因為測試環(huán)境耻瑟,使用的人員比較少,并且出現(xiàn)問題是在新增了其他的項目都出現(xiàn)的赏酥,所有排除了代碼的問題喳整。(也有可能是jvm內(nèi)存泄漏引起的,大家有這個問題的話可以去用Jmap命令將整個heap dump下來裸扶,然后用jvisualvm分析)

在這里插入圖片描述

這里用到的命令:

jmap -heap [pid]
//關(guān)于內(nèi)存占用比例的一個命令
ps aux | sort -k4nr | head -n 10
  • 注意:如果服務(wù)器中有多個jdk框都,請到具體的jdk/bin下執(zhí)行jmap命令, /usr/local/jdk1.8.0_74/bin/jmap -heap 28177

圖1中jvm占用內(nèi)存計算:

元空間(5MB)+ eden(118MB)+年老代(187MB)+線程棧(49*1024KB)+JVM進程本身運行內(nèi)存+ NIO的DirectBuffer +JIT+JNI+…≈top(Res) 470MB

當(dāng)前jvm線程數(shù)統(tǒng)計:jstack 7311 |grep ‘tid’|wc –l (linux 64位系統(tǒng)中jvm線程默認棧大小為1MB)

所以去修改啟動腳本姓言,修改項目服務(wù)的JVM大兴蚕睢;部署系統(tǒng)的啟動腳本何荚,正確的Java命令:

java [ options ] class [ arguments ]
java [ options ] -jar file.jar [ arguments ]
  • 注意:linux執(zhí)行命令的時候要注意空格的使用囱淋,千萬不能多打

參考:
https://blog.csdn.net/weixin_47202722/article/details/108513876?utm_medium=distribute.pc_relevant.none-task-blog-baidulandingword-14&spm=1001.2101.3001.4242

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市餐塘,隨后出現(xiàn)的幾起案子妥衣,更是在濱河造成了極大的恐慌,老刑警劉巖戒傻,帶你破解...
    沈念sama閱讀 218,284評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件税手,死亡現(xiàn)場離奇詭異,居然都是意外死亡需纳,警方通過查閱死者的電腦和手機芦倒,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,115評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來不翩,“玉大人兵扬,你說我怎么就攤上這事麻裳。” “怎么了器钟?”我有些...
    開封第一講書人閱讀 164,614評論 0 354
  • 文/不壞的土叔 我叫張陵津坑,是天一觀的道長。 經(jīng)常有香客問我傲霸,道長疆瑰,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,671評論 1 293
  • 正文 為了忘掉前任昙啄,我火速辦了婚禮穆役,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘跟衅。我一直安慰自己孵睬,他們只是感情好播歼,可當(dāng)我...
    茶點故事閱讀 67,699評論 6 392
  • 文/花漫 我一把揭開白布伶跷。 她就那樣靜靜地躺著,像睡著了一般秘狞。 火紅的嫁衣襯著肌膚如雪叭莫。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,562評論 1 305
  • 那天烁试,我揣著相機與錄音雇初,去河邊找鬼。 笑死减响,一個胖子當(dāng)著我的面吹牛靖诗,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播支示,決...
    沈念sama閱讀 40,309評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼刊橘,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了颂鸿?” 一聲冷哼從身側(cè)響起促绵,我...
    開封第一講書人閱讀 39,223評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎嘴纺,沒想到半個月后败晴,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,668評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡栽渴,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,859評論 3 336
  • 正文 我和宋清朗相戀三年尖坤,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片闲擦。...
    茶點故事閱讀 39,981評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡慢味,死狀恐怖僚祷,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情贮缕,我是刑警寧澤辙谜,帶...
    沈念sama閱讀 35,705評論 5 347
  • 正文 年R本政府宣布,位于F島的核電站感昼,受9級特大地震影響装哆,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜定嗓,卻給世界環(huán)境...
    茶點故事閱讀 41,310評論 3 330
  • 文/蒙蒙 一蜕琴、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧宵溅,春花似錦凌简、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,904評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至寇损,卻和暖如春凸郑,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背矛市。 一陣腳步聲響...
    開封第一講書人閱讀 33,023評論 1 270
  • 我被黑心中介騙來泰國打工芙沥, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人浊吏。 一個月前我還...
    沈念sama閱讀 48,146評論 3 370
  • 正文 我出身青樓而昨,卻偏偏與公主長得像,于是被迫代替她去往敵國和親找田。 傳聞我的和親對象是個殘疾皇子歌憨,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,933評論 2 355

推薦閱讀更多精彩內(nèi)容