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

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

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

    吳密的博客

    每天進(jìn)步一點(diǎn)點(diǎn)
    posts - 12, comments - 1, trackbacks - 0, articles - 1

    系統(tǒng)內(nèi)存泄露(防丟)

    Posted on 2011-01-06 18:38 xiaolang 閱讀(2565) 評論(0)  編輯  收藏

      1. Jboss數(shù)據(jù)源配置文件中, <prepared-statement-cache-size>配置項(xiàng)的值設(shè)置過大(最初設(shè)為100),是導(dǎo)致內(nèi)存使用過大的直接原因。眾所周知,對sql語句進(jìn)行預(yù)編譯,可以提高sql語句的查詢效率,因此使用該配置項(xiàng)設(shè)定最多緩存多少條預(yù)編譯的sql語句(tradequery應(yīng)用系統(tǒng)設(shè)定的值為100個)。物理分庫后,一臺服務(wù)器從20個數(shù)據(jù)庫連接增加到60個數(shù)據(jù)庫連接,每個連接都會緩存100條預(yù)編譯的sql, 總共就是60*100 = 6000個。然而實(shí)際上jdbc在解析sql語句的時候,進(jìn)行緩存的并不只是sql語句本身,還緩存了查詢結(jié)果字段類型的大小。并且如果語句中包含in的查詢,由于in后面的列表是變化的,因此就可能會對一條查詢語句進(jìn)行多次不同的緩存。此外,jdbc driver里還會預(yù)先設(shè)定一個值(fetch Size),用來表示緩存sql的查詢結(jié)果條數(shù),這也會再次成倍數(shù)的增加內(nèi)存的消耗。因此,<prepared-statement-cache-size>值設(shè)置太大,將可能會耗光應(yīng)用服務(wù)器的內(nèi)存。

     

    2. 使用了未設(shè)計(jì)細(xì)致的velocity引擎, new了大量的空對象。因?yàn)殇N售老的流程引擎中直接使用了velocity引擎,而引擎中使用了老的log4j文件,由于框架中也未設(shè)置velocity的日志配置,輸出日志時,沒有找到appender,所以都是新new出來的。因此一旦業(yè)務(wù)發(fā)展,每次流程執(zhí)行中都會新建大量的appender對象。業(yè)務(wù)量到一定程度的時候,會導(dǎo)致系統(tǒng)內(nèi)存爆滿。

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 亚洲精品国产首次亮相| 亚洲一区二区三区无码国产| 综合一区自拍亚洲综合图区| 成年免费大片黄在线观看岛国| 亚洲精品高清视频| 毛片免费在线观看| 久久久久久亚洲av成人无码国产| 亚洲理论片在线中文字幕| 99精品视频在线免费观看 | 日日操夜夜操免费视频| 亚洲第一永久AV网站久久精品男人的天堂AV| 亚洲小说图区综合在线| 国产一区二区三区免费观看在线| 中文字幕精品亚洲无线码一区| 久久WWW免费人成—看片| 在线免费观看a级片| 亚洲男人天堂2017| 每天更新的免费av片在线观看| 亚洲综合色丁香麻豆| 中文字幕影片免费在线观看| 亚洲成AV人片在WWW| 午夜亚洲国产成人不卡在线| 亚洲成a人片在线网站| 国产精品视频永久免费播放| 亚洲AV无码专区国产乱码不卡| 国产精品免费观看调教网| 77777亚洲午夜久久多人| 无码一区二区三区免费| 亚洲人成人一区二区三区| 国产在亚洲线视频观看| 国产精品免费精品自在线观看| 亚洲欧洲日韩国产一区二区三区| 免费欧洲美女牲交视频| 国产一区二区免费视频| 亚洲中文字幕人成乱码| 免费一级黄色毛片| 亚洲国产美女精品久久久| 亚洲精品A在线观看| 美女裸体无遮挡免费视频网站| 亚洲乱码国产乱码精品精| 免费看污成人午夜网站|