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

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

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

    經驗不在于年限,在于積累---專注互聯網軟件開發

    把工作當事業做,把項目當作品做!

      BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
      55 Posts :: 0 Stories :: 66 Comments :: 0 Trackbacks

      利用Hadoop分析BHO上報日志時,發現很多日志文件會出現下面的錯誤:

    clip_image002

      即在map結束的時候拋出Java堆棧溢出異常!

    (友情提示:本博文章歡迎轉載,但請注明出處:hankchen,http://www.tkk7.com/hankchen

      首先設置下面的參數:

    clip_image004

    發現還是解決不了問題。開始懷疑代碼問題,于是進行了一系列的優化:

    clip_image006

    主要的優化是,在map和reduce程序中,重用key和value對象。但是發現還是解決不了問題。并且mapred.child.java.opts設置3G也無濟于事。

    沒有辦法,只好繼續找原因。最后發現一個規律:報這個異常出錯的日志不一定是最大的日志。

    只好使用最后一招了,直接分析報錯時的Java堆內存情況!

    再次出現異常的時候,把集群里面所有的機器的Hadoop進程的堆內存導出來分析!

    主要是下面的幾類進程:

    clip_image008

    同時,關注每臺機器的top命令輸出,可以從內存的使用情況中發現主要是哪臺機器出問題!然后重點導出這臺機器的Java堆參數!

    jmap -dump:live,format=b,file=heapt0923.bin pid

    clip_image010

    剩下來的就是把/data/bhopid_output/heapt0923.bin這個文件復制到本地,利用Eclipse Memory Analyzer Tool 進行分析!

    下面是分析的結果:

    clip_image012

    發現有兩個內存泄漏的情況:

    1、

    clip_image014

    2、

    clip_image016

    找到根本原因:說明日志文件有這樣很大的空記錄導致的!在代碼中把這些記錄忽略掉即可!

    clip_image002[11]

     

    (友情提示:本博文章歡迎轉載,但請注明出處:hankchen,http://www.tkk7.com/hankchen

    posted on 2012-03-21 17:52 hankchen 閱讀(8800) 評論(0)  編輯  收藏 所屬分類: 工作感悟
    主站蜘蛛池模板: 亚洲日韩在线视频| 狠狠综合久久综合88亚洲| 亚洲国产精品专区| 最近最新高清免费中文字幕| 亚洲精品无码久久久影院相关影片 | 最新69国产成人精品免费视频动漫| 亚洲中字慕日产2020| 91人成网站色www免费下载| 久久精品国产亚洲AV网站| 无码成A毛片免费| 久久精品国产亚洲av高清漫画| 18禁无遮挡无码国产免费网站| 亚洲美女色在线欧洲美女| 免费观看黄色的网站| 456亚洲人成在线播放网站| 黄色成人网站免费无码av| 亚洲午夜无码久久| 国产精品免费播放| 一级毛片免费播放男男| 亚洲成av人影院| 国产在线a免费观看| 亚洲av日韩专区在线观看| 亚洲人午夜射精精品日韩| 在线播放免费人成毛片乱码| 亚洲精品免费观看| 成年在线观看免费人视频草莓| 亚洲aⅴ无码专区在线观看春色| 亚洲AV网站在线观看| 野花香在线视频免费观看大全| 亚洲日韩中文字幕| 国产在线观看免费不卡| 成人久久免费网站| 亚洲一区二区三区在线| 亚洲成aⅴ人片久青草影院| 女人体1963午夜免费视频| 亚洲校园春色另类激情| 亚洲午夜未满十八勿入网站2| 亚洲精品免费在线视频| 日韩在线一区二区三区免费视频 | 亚洲精品免费网站| 日韩大片免费观看视频播放 |