成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Weblogic診斷之內(nèi)存泄漏故障

IT那活兒 / 1316人閱讀
Weblogic診斷之內(nèi)存泄漏故障

點(diǎn)擊上方“IT那活兒”公眾號,關(guān)注后了解更多內(nèi)容,不管IT什么活兒,干就完了?。?!

在我們運(yùn)維工作中經(jīng)常會遇到內(nèi)存不足或者內(nèi)存泄漏的情況,本篇文章簡單介紹下遇到這類情況該如何去排查。


概述

當(dāng)JVM沒有足夠的堆空間可用于分配新的Java對象時,就會出現(xiàn)Java堆內(nèi)存不足錯誤。

1.1 Java堆內(nèi)存不足故障癥狀

  • JVM會拋出Java.lang .OutOfMemoryError異常。
  • 服務(wù)響應(yīng)緩慢或不響應(yīng)業(yè)務(wù)請求。
  • 應(yīng)用程序可以忽略錯誤或處理異常,例如友好退出。
  • 如果應(yīng)用程序忽略錯誤,線程將會退出(且將不會出現(xiàn)在Thread dump中)。
  • WebLogic Server的執(zhí)行線程只是通過記錄狀態(tài)來處理異常。
  • 但連續(xù)發(fā)生的錯誤將導(dǎo)致健康監(jiān)控線程關(guān)閉服務(wù)器。

1.2 堆內(nèi)存不足的可能原因

  • 沒有足夠的堆;
  • 對象的活動時間過長;
  • 應(yīng)用程序在內(nèi)存中緩存對象過多;
  • 內(nèi)存泄漏;
  • 因存在jvm錯誤未能執(zhí)行完整的GC;
  • 內(nèi)存碎片。


排查步驟

2.1 先獲取應(yīng)用進(jìn)程號
ps  -ef | grep  應(yīng)用名
2.2 查看pid jvm堆使用情況、垃圾回收情況 
jstat  -gcutil pid 1000 10(時間間隔1000ms,輸出10次)
2.3 開啟OOM快照(在啟動參數(shù)里面加)
-XX:+HeapDumpOnOutOfMemoryError(開啟堆快照)
-XX:HeapDumpPath=C:/m.hprof(保存文件到哪個目錄)
2.4 dump 查看方法棧信息
jstack -l pid > /home/test/jstack.txt
2.5 dump 查看JVM內(nèi)存分配以及使用情況 
jmap -heap pid > /home/test/jmapHeap.txt
2.6 dump jvm二進(jìn)制的內(nèi)存詳細(xì)使用情況(需要借用內(nèi)存分析工具如:Memory Analyzer (MAT)來分析

jmap -dump:format=b,file=/home/test/oom.hprof pid


解決方案

3.1 年老代堆空間被占滿
  • 異常:java.lang.OutOfMemoryError:java  heap space
  • 說明:這是最典型的內(nèi)存泄漏方式,簡單說就是所有堆空間都被無法回收的垃圾對象占滿,虛擬機(jī)再也無法分配新空間。
  • 解決方案:這種方式解決起來比較簡單,一般就是根據(jù)垃圾回收前后的情況對比,同時根據(jù)對象引用情況(常見的集合對象引用)分析,基本都可以找到泄漏點(diǎn)。
3.2 持久代被占滿
  • 異常:java.lang.OutOfMemoryError:PermGen space
  • 說明:Perm 空間被占滿,無法為新的 class 分配存儲空間而引發(fā)的異常。主要原因是大量動態(tài)反射生成的類不斷被加載,最終導(dǎo)致 Perm 區(qū)被占滿。
  • 解決方案:增加持久代內(nèi)存 ,例如:-XX:MaxPermSize=512M




本文作者:程 紅(上海新炬王翦團(tuán)隊(duì))

本文來源:“IT那活兒”公眾號

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/129207.html

相關(guān)文章

  • AIOps在攜程的踐行

    摘要:隨著人工智能時代的到來,攜程生產(chǎn)環(huán)境運(yùn)維進(jìn)入了新的運(yùn)維時代。本文選取了幾種典型的運(yùn)維場景對在攜程的踐行展開了介紹,首先讓我們從概念認(rèn)識下。針對應(yīng)用異常指標(biāo)檢測這種場景,抽取一定的樣本統(tǒng)計(jì),在基于專家經(jīng)驗(yàn)標(biāo)注下的準(zhǔn)確率可達(dá)到以上,召回率接近。 作者簡介徐新龍,攜程技術(shù)保障中心應(yīng)用管理團(tuán)隊(duì)高級工程師,負(fù)責(zé)多個AIOps項(xiàng)目的設(shè)計(jì)與研發(fā)。信號處理專業(yè)碩士畢業(yè),對人工智能、機(jī)器學(xué)習(xí)、神經(jīng)網(wǎng)絡(luò)及數(shù)學(xué)有...

    MingjunYang 評論0 收藏0
  • 診斷修復(fù) TiDB Operator 在 K8s 測試中遇到的 Linux 內(nèi)核問題

    摘要:診斷修復(fù)不穩(wěn)定的關(guān)鍵詞社區(qū)相關(guān)問題起源薛定諤平臺是我司開發(fā)的基于建立的一套自動化測試框架,提供各種能力,同時也提供自動化的測試,各類異常監(jiān)控告警以及自動輸出測試報告等功能。作者:張文博 Kubernetes(K8s)是一個開源容器編排系統(tǒng),可自動執(zhí)行應(yīng)用程序部署、擴(kuò)展和管理。它是云原生世界的操作系統(tǒng)。 K8s 或操作系統(tǒng)中的任何缺陷都可能使用戶進(jìn)程存在風(fēng)險。作為 PingCAP EE(效率工...

    EdwardUp 評論0 收藏0
  • 診斷修復(fù) TiDB Operator 在 K8s 測試中遇到的 Linux 內(nèi)核問題

    摘要:經(jīng)過廣泛的調(diào)查和診斷,我們已經(jīng)確定了處理這些問題的方法。我們發(fā)現(xiàn)在薛定諤平臺上做測試時偶爾會發(fā)生性能抖動,但從下面幾項(xiàng)來看未發(fā)現(xiàn)異常和的日志使用率內(nèi)存和磁盤等負(fù)載信息只能偶爾看到命令執(zhí)行的結(jié)果中包含一些信息。 作者:張文博 Kubernetes(K8s)是一個開源容器編排系統(tǒng),可自動執(zhí)行應(yīng)用程序部署、擴(kuò)展和管理。它是云原生世界的操作系統(tǒng)。 K8s 或操作系統(tǒng)中的任何缺陷都可能使用戶進(jìn)程...

    PiscesYE 評論0 收藏0
  • 診斷修復(fù) TiDB Operator 在 K8s 測試中遇到的 Linux 內(nèi)核問題

    摘要:經(jīng)過廣泛的調(diào)查和診斷,我們已經(jīng)確定了處理這些問題的方法。我們發(fā)現(xiàn)在薛定諤平臺上做測試時偶爾會發(fā)生性能抖動,但從下面幾項(xiàng)來看未發(fā)現(xiàn)異常和的日志使用率內(nèi)存和磁盤等負(fù)載信息只能偶爾看到命令執(zhí)行的結(jié)果中包含一些信息。 作者:張文博 Kubernetes(K8s)是一個開源容器編排系統(tǒng),可自動執(zhí)行應(yīng)用程序部署、擴(kuò)展和管理。它是云原生世界的操作系統(tǒng)。 K8s 或操作系統(tǒng)中的任何缺陷都可能使用戶進(jìn)程...

    LeanCloud 評論0 收藏0

發(fā)表評論

0條評論

IT那活兒

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<