<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    MDA/MDD/TDD/DDD/DDDDDDD
    posts - 536, comments - 111, trackbacks - 0, articles - 0
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    java內存泄漏筆記之二

    Posted on 2009-02-04 19:47 leekiang 閱讀(12307) 評論(1)  編輯  收藏 所屬分類: java
    1,weblogic8.1默認是不能運行在jdk5和jdk6上的,原因是weblogic8的mbean為1.0版本,而jdk5和jdk6自帶的mbean版本要高(為1.1?)
    ?
    ? 可以在環境變量里配置一個參數,設置mbean=1.0,然后weblogic8.1就能運行在jdk5和jdk6上了,但這樣據說會產生其他問題。參見
    ?
    2,如何分析MAT里那個leak餅圖?
    ? 那個餅圖分為好幾塊,除了Remainder外,其他好幾塊的名字都是以Problem Suspect開始的,看樣子內存泄漏不可能發生在Remainder

    3,有人如果98%的時間是用于GC且可用的 Heap size 不足2%,才會產生內存溢出?

    4,如何在jdk6配置內存溢出時是否產生dump文件
    ? 可以在jdk6的jconsole的MBean的com.sun.management的HotSpotDiagnostic MBeanHotSpotDiagnostic MBean的第3個調用里,
    ? 設置p0為HeapDumpOnOutOfMemoryError,p1為true,然后點擊setVMOption按鈕。
    ?? 則內存溢出時會自動創建一個java_pid<pid>.hprof的堆dump(轉儲)文件,默認存放工作空間下(例如tomcat的bin目錄)
    ? ?
    ?? 先把tomcat的內存設置得很小,再跑應用,后臺很快就報以下錯誤:
    java.lang.OutOfMemoryError: Java heap space
    Dumping heap to java_pid5736.hprof ...
    Heap dump file created [87840650 bytes in 4.488 secs]
    2009-2-4 19:17:59 org.apache.tomcat.util.threads.ThreadPool$ControlRunnable run
    嚴重: Caught exception (java.lang.OutOfMemoryError: Java heap space) executing org.apache.tomcat.util.net.TcpWorkerThread@a77785, terminating thread
    2009-2-4 19:18:02 org.apache.tomcat.util.net.TcpWorkerThread runIt
    嚴重: Unexpected error
    java.lang.OutOfMemoryError: Java heap space
    2009-2-4 19:18:04 org.apache.tomcat.util.threads.ThreadPool$ControlRunnable run
    嚴重: Caught exception (java.lang.OutOfMemoryError: Java heap space) executing org.apache.tomcat.util.net.TcpWorkerThread@a77785, terminating thread
    Exception in thread "DefaultQuartzScheduler_QuartzSchedulerThread" java.lang.OutOfMemoryError: Java heap space
    2009-2-4 19:18:05 org.apache.coyote.http11.Http11Processor process
    嚴重: Error processing request
    java.lang.OutOfMemoryError: Java heap space
    2009-2-4 19:18:13 org.apache.coyote.http11.Http11Processor process
    嚴重: Error finishing response
    java.lang.OutOfMemoryError: Java heap space
    Hibernate: select......這里它抽空還執行了一條sql
    .........略.............................
    Exception in thread "RMI TCP Connection(idle)" java.lang.OutOfMemoryError: Java heap space
    Exception in thread "Timer-0" java.lang.OutOfMemoryError: Java heap space
    Exception in thread "RMI TCP Connection(idle)" java.lang.OutOfMemoryError: Java heap space
    Exception in thread "RMI TCP Connection(idle)" java.lang.OutOfMemoryError: Java heap space
    .........略.............................

    ?在輸出錯誤日志的過程中,不知何故還會在eclipse的debug里不停的調用java.util.concurrent.ThreadPoolExecutor

    5,內存溢出時自動生成的dump文件和未溢出時自己用jmap導出的dump文件的leak餅圖有很大區別,我感覺前者的分析要有用一些。具體區別:
    ? (1)后者有org.apache.catalina.loader.WebappClassLoader和ZipFileIndex,而前者沒有
    ? (2)兩者都有org.hibernate.impl.SessionFactoryImpl
    ? (3)前者有如下的關鍵信息:

    8,980 instances of "java.lang.Class", loaded by "<system class loader>" occupy 8,208,768 (12.43%) bytes.

    Biggest instances:

  • class org.springframework.beans.CachedIntrospectionResults @ 0x735f808?-?2,218,536 (3.36%) bytes. These instances are referenced from one instance of "java.lang.Thread", loaded by "<system class loader>"


  • 6,一個疑問,為何無人訪問時Tomcat的內存圖是鋸齒形的

    7,我配置了-XX:+HeapDumpOnCtrlBreak,用的jdk1.5.0_14
    結果Ctrl+Break 時報
    Unable to create java_pid3072.hprof.m27.10/05/07M20: No such file or directory
    這里 找到了原因,是jdk的一個bug(bug id:6454676),This problem has been fixed in 1.4.2_18 and 5.0u17

    8,前兩個1g的頂峰處,是tomcat自己進行的gc。后面的幾個是我自己手動gc的

    heap.jpg

    9,

    7,002 instances of "java.lang.Class", loaded by "<system class loader>" occupy 12,359,912 (11.20%) bytes.

    Biggest instances:

  • class sun.rmi.server.UnicastServerRef @ 0x51b16a48?-?4,447,432 (4.03%) bytes.
  • class sun.rmi.transport.ObjectTable @ 0x51b40330?-?3,491,160 (3.16%) bytes
  • 問題

    評論

    # re: java內存泄漏筆記之二  回復  更多評論   

    2012-11-26 13:53 by ihopethatwell
    樓主,像這樣內存溢出,怎么優化?
    主站蜘蛛池模板: 精品乱子伦一区二区三区高清免费播放| 亚洲精品国产精品国自产网站| 国产成人精品日本亚洲| 久久精品亚洲视频| 亚洲国产成人超福利久久精品| 99久久婷婷国产综合亚洲| 亚洲欧美在线x视频| 99re8这里有精品热视频免费| 无码专区AAAAAA免费视频| 欧洲黑大粗无码免费 | 深夜免费在线视频| 国产色无码精品视频免费| 桃子视频在线观看高清免费完整| 成人毛片免费在线观看| 久久精品国产亚洲精品| 亚洲视频免费在线看| 亚洲av中文无码字幕色不卡| xxxx日本在线播放免费不卡| 久久w5ww成w人免费| 国产真人无遮挡作爱免费视频| 精品亚洲综合久久中文字幕| 亚洲人精品亚洲人成在线| www一区二区www免费| 18以下岁毛片在免费播放| 四虎亚洲国产成人久久精品| 99亚洲精品高清一二区| 偷自拍亚洲视频在线观看| 亚洲视频免费在线观看| 国产嫩草影院精品免费网址| 亚洲色图在线观看| 羞羞视频在线免费观看| 亚洲精品视频免费在线观看| gogo全球高清大胆亚洲| 亚洲精品中文字幕无码AV| 有码人妻在线免费看片| 1000部国产成人免费视频| 国产专区一va亚洲v天堂| 99亚偷拍自图区亚洲| 日本视频在线观看永久免费| 国产成人无码a区在线观看视频免费 | 无码国产精品一区二区免费式芒果|