<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://m.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://m.tkk7.com/hankchen

    posted on 2012-03-21 17:52 hankchen 閱讀(8800) 評論(0)  編輯  收藏 所屬分類: 工作感悟
    主站蜘蛛池模板: 亚洲不卡1卡2卡三卡2021麻豆| 亚洲区日韩精品中文字幕| 亚洲精品自产拍在线观看动漫| 亚洲福利一区二区三区| 视频一区在线免费观看| 95老司机免费福利| 波多野结衣视频在线免费观看 | 在线亚洲高清揄拍自拍一品区| 中文字幕亚洲码在线| 免费福利网站在线观看| 亚洲人成人77777网站| 亚洲AV无码成人精品区狼人影院 | 久久免费的精品国产V∧| 国产精品免费一级在线观看| 亚洲最大的成网4438| 有色视频在线观看免费高清在线直播 | 中文字幕乱码亚洲无线三区 | 亚洲免费一区二区| 国产婷婷高清在线观看免费| 国产91成人精品亚洲精品| 1024免费福利永久观看网站| 精品国产_亚洲人成在线高清| 国产成人精品日本亚洲语音| 69式互添免费视频| 亚洲av中文无码乱人伦在线咪咕| 亚洲AV成人无码久久WWW| 亚洲成av人片在线观看天堂无码| 亚洲精品无码专区在线播放| 免费永久看黄在线观看app| 亚洲精品国产综合久久久久紧| 五月亭亭免费高清在线| 久久夜色精品国产噜噜亚洲a| 免费一级毛片免费播放| 视频免费在线观看| 在线播放亚洲第一字幕| 日本高清免费中文在线看| 全亚洲最新黄色特级网站 | 亚洲熟女一区二区三区| 成人免费视频网站www| 自拍偷自拍亚洲精品偷一| 亚洲人成77777在线播放网站|