JVM 性能優(yōu)化實(shí)踐

配置介紹

神舟筆記本 I7-3610QM+8G+240SSD+500G

模仿

使用JAVA開發(fā)的著名軟件有兩個(gè)EclipseIdea薄风,我們從此剖析

Idea 2017

JVM參數(shù)如下

image.png
  1. -Server 運(yùn)行模式
    虛擬機(jī)在解釋執(zhí)行相對(duì)應(yīng)的另一方面,虛擬機(jī)還有力度更強(qiáng)的編譯器:當(dāng)虛擬機(jī)運(yùn)行在客戶端模式是使用C1輕量級(jí),服務(wù)端是C2重量級(jí)。顯而易見蹄胰,重量級(jí)會(huì)消耗更多的系統(tǒng)資源但是帶來更強(qiáng)的性能。如果大家像我一樣系統(tǒng)資源足夠且長時(shí)間使用編譯軟件推薦是用C2

  2. -Xms -Xmx
    堆初始值128m 最大750m
    計(jì)算 最大值為不超過系統(tǒng)1/4

  3. ReservedCodeCacheSize
    保留代碼所用的Cache大小

  4. UseConcMarkSweepGC
    -XX:+UseConcMarkSweepGC:設(shè)置年老代為并發(fā)收集爱致。測試中配置這個(gè)以后烤送,-XX:NewRatio=4的配置失效了,原因不明糠悯。所以帮坚,此時(shí)年輕代大小最好用-Xmn設(shè)置。

  5. XX:SoftRefLRUPolicyMSPerMB
    -XX:SoftRefLRUPolicyMSPerMB=N 這個(gè)參數(shù)比較有用的互艾,官方解釋是:Soft reference在虛擬機(jī)中比在客戶集中存活的更長一些试和。其清除頻率可以用命令行參數(shù) -XX:SoftRefLRUPolicyMSPerMB=<N>來控制,這可以指定每兆堆空閑空間的 soft reference 保持存活(一旦它不強(qiáng)可達(dá)了)的毫秒數(shù)纫普,這意味著每兆堆中的空閑空間中的 soft reference 會(huì)(在最后一個(gè)強(qiáng)引用被回收之后)存活1秒鐘阅悍。注意好渠,這是一個(gè)近似的值,因?yàn)? soft reference 只會(huì)在垃圾回收時(shí)才會(huì)被清除节视,而垃圾回收并不總在發(fā)生拳锚。系統(tǒng)默認(rèn)為一秒,我覺得沒必要等1秒寻行,客戶集中不用就立刻清除霍掺,改為 -XX:SoftRefLRUPolicyMSPerMB=0;

  6. ea
    -ea[:<package name>"..." | :<class name> ]
    上述參數(shù)就用來設(shè)置jvm是否啟動(dòng)斷言機(jī)制(從JDK 1.4開始支持)拌蜘,缺省時(shí)jvm關(guān)閉斷言機(jī)制杆烁。
    用-ea 可打開斷言機(jī)制,不加<packagename>和classname時(shí)運(yùn)行所有包和類中的斷言简卧,如果希望只運(yùn)行某些包或類中的斷言兔魂,可將包名或類名加到-ea之后。例如要啟動(dòng)包c(diǎn)om.wombat.fruitbat中的斷言举娩,可用命令java -ea:com.wombat.fruitbat...<Main Class>析校。

  7. useCanonCaches
    使用標(biāo)準(zhǔn)IO緩存

  8. preferIPv4Stack
    優(yōu)先使用IPv4棧

  9. HeapDumpOnOutOfMemoryError
    堆內(nèi)存溢出輸出

  10. OmitStackTraceInFastThrow
    開啟追蹤

Eclipse

1image.png

前面是使用了一些插件可以忽略

Diff

默認(rèn)使用了G1收集器
Eclipse更使用更多內(nèi)存
在使用G1垃圾回收器的時(shí)候,通過 JVM參數(shù) -XX:+UseStringDeduplication 晓铆。 我們可以通過刪除重復(fù)的字符串勺良,只保留一個(gè)char[]來優(yōu)化堆內(nèi)存。這個(gè)選擇在Java 8 u 20被引入

推薦文章

JVM

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末骄噪,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子蠢箩,更是在濱河造成了極大的恐慌链蕊,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,542評(píng)論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件谬泌,死亡現(xiàn)場離奇詭異滔韵,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)掌实,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,596評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門陪蜻,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人贱鼻,你說我怎么就攤上這事宴卖。” “怎么了邻悬?”我有些...
    開封第一講書人閱讀 158,021評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵症昏,是天一觀的道長。 經(jīng)常有香客問我父丰,道長肝谭,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,682評(píng)論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮攘烛,結(jié)果婚禮上魏滚,老公的妹妹穿的比我還像新娘。我一直安慰自己坟漱,他們只是感情好鼠次,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,792評(píng)論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著靖秩,像睡著了一般须眷。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上沟突,一...
    開封第一講書人閱讀 49,985評(píng)論 1 291
  • 那天花颗,我揣著相機(jī)與錄音,去河邊找鬼惠拭。 笑死扩劝,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的职辅。 我是一名探鬼主播棒呛,決...
    沈念sama閱讀 39,107評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢(mèng)啊……” “哼域携!你這毒婦竟也來了簇秒?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,845評(píng)論 0 268
  • 序言:老撾萬榮一對(duì)情侶失蹤秀鞭,失蹤者是張志新(化名)和其女友劉穎趋观,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體锋边,經(jīng)...
    沈念sama閱讀 44,299評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡皱坛,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,612評(píng)論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了豆巨。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片剩辟。...
    茶點(diǎn)故事閱讀 38,747評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖往扔,靈堂內(nèi)的尸體忽然破棺而出贩猎,到底是詐尸還是另有隱情,我是刑警寧澤瓤球,帶...
    沈念sama閱讀 34,441評(píng)論 4 333
  • 正文 年R本政府宣布融欧,位于F島的核電站,受9級(jí)特大地震影響卦羡,放射性物質(zhì)發(fā)生泄漏噪馏。R本人自食惡果不足惜麦到,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,072評(píng)論 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望欠肾。 院中可真熱鬧瓶颠,春花似錦、人聲如沸刺桃。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,828評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽瑟慈。三九已至桃移,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間葛碧,已是汗流浹背借杰。 一陣腳步聲響...
    開封第一講書人閱讀 32,069評(píng)論 1 267
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留进泼,地道東北人蔗衡。 一個(gè)月前我還...
    沈念sama閱讀 46,545評(píng)論 2 362
  • 正文 我出身青樓,卻偏偏與公主長得像乳绕,于是被迫代替她去往敵國和親绞惦。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,658評(píng)論 2 350

推薦閱讀更多精彩內(nèi)容

  • 轉(zhuǎn)載blog.csdn.net/ning109314/article/details/10411495/ JVM工...
    forever_smile閱讀 5,356評(píng)論 1 56
  • 1.一些概念 1.1.數(shù)據(jù)類型 Java虛擬機(jī)中洋措,數(shù)據(jù)類型可以分為兩類:基本類型和引用類型济蝉。基本類型的變量保存原始...
    落落落落大大方方閱讀 4,524評(píng)論 4 86
  • Java 應(yīng)用性能優(yōu)化是一個(gè)老生常談的話題菠发,典型的性能問題如頁面響應(yīng)慢堆生、接口超時(shí),服務(wù)器負(fù)載高雷酪、并發(fā)數(shù)低,數(shù)據(jù)庫頻...
    Rick617閱讀 7,327評(píng)論 1 9
  • 參數(shù)設(shè)置 在Java虛擬機(jī)的參數(shù)中涝婉,有3種表示方法用“ps -ef |grep "java"命令哥力,可以得到當(dāng)前Ja...
    九問閱讀 9,128評(píng)論 2 52
  • 原文閱讀 前言 這段時(shí)間懈怠了,罪過墩弯! 最近看到有同事也開始用上了微信公眾號(hào)寫博客了吩跋,挺好的~給他們點(diǎn)贊,這博客我...
    碼農(nóng)戲碼閱讀 5,954評(píng)論 2 31