精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

JVM 命令行標(biāo)志您不知道的5件事

開(kāi)發(fā) 后端
Java虛擬機(jī)有數(shù)百個(gè)命令行選項(xiàng),被經(jīng)驗(yàn)豐富的開(kāi)發(fā)人員用來(lái)調(diào)優(yōu) Java 運(yùn)行時(shí)。本文中,您將學(xué)習(xí)如何監(jiān)控和記錄編譯器性能、禁用顯式垃圾收集、擴(kuò)展 JRE 等等。

  JVM 是多數(shù)開(kāi)發(fā)人員視為理所當(dāng)然的 Java 功能和性能背后的重負(fù)荷機(jī)器。然而,我們很少有人能理解 JVM 是如何進(jìn)行工作的 — 像任務(wù)分配和垃圾收集、轉(zhuǎn)動(dòng)線程、打開(kāi)和關(guān)閉文件、中斷和/或 JIT 編譯 Java 字節(jié)碼,等等。不熟悉 JVM 將不僅會(huì)影響應(yīng)用程序性能,而且當(dāng) JVM 出問(wèn)題時(shí),嘗試修復(fù)也會(huì)很困難。本文將介紹一些命令行標(biāo)志,您可以使用它們來(lái)診斷和調(diào)優(yōu)您的 Java 虛擬機(jī)性能。

1. DisableExplicitGC

  我已記不清有多少次用戶要求我就應(yīng)用程序性能問(wèn)題提供咨詢了,其實(shí)只要跨代碼快速運(yùn)行 grep,就會(huì)發(fā)現(xiàn)清單 1 所示的問(wèn)題 — 原始 java 性能反模式:

清單 1. System.gc();

  1. // We just released a bunch of objects, so tell the stupid  
  2. // garbage collector to collect them already!  
  3. System.gc(); 

  顯式垃圾收集是一個(gè)非常糟糕的主意 — 就像將您和一個(gè)瘋狂的斗牛犬鎖在一個(gè)電話亭里。盡管調(diào)用的語(yǔ)法是依賴實(shí)現(xiàn)的,但如果您的 JVM 正在運(yùn)行一個(gè)分代的垃圾回收器(大多數(shù)是)System.gc(); 強(qiáng)迫 VM 執(zhí)行一個(gè)堆的 “全部清掃”,雖然有的沒(méi)有必要。全部清掃比一個(gè)常規(guī) GC 操作要昂貴好幾個(gè)數(shù)量級(jí),這只是個(gè)簡(jiǎn)單數(shù)學(xué)問(wèn)題。

  您可以不把我的話放在心上 — Sun 的工程師為這個(gè)特殊的人工錯(cuò)誤提供一個(gè) JVM 標(biāo)志; -XX:+DisableExplicitGC 標(biāo)志自動(dòng)將 System.gc() 調(diào)用轉(zhuǎn)換成一個(gè)空操作,為您提供運(yùn)行代碼的機(jī)會(huì),您自己看看 System.gc() 對(duì)于整個(gè) JVM 執(zhí)行有害還是有利。

2. HeapDumpOnOutOfMemoryError

  您有沒(méi)有經(jīng)歷過(guò)這樣的情況:JVM 不能使用,不斷拋出 OutOfMemoryError,而您又不能為自己創(chuàng)建調(diào)試器來(lái)捕獲它或查看出現(xiàn)了什么問(wèn)題?像這類偶發(fā)和/或不確定的問(wèn)題,通常使開(kāi)發(fā)人員發(fā)瘋。

  買者自負(fù)并不是任何 VM 都支持所有命令行標(biāo)志,Sun/Oracle 的 VM 除外。查明一個(gè)標(biāo)志是否被支持的最好方法是試用它,看它是否正常工作。倘若這些標(biāo)志在技術(shù)上是不支持的,那么,使用它們您要承擔(dān)全部責(zé)任。如果這些標(biāo)志中的任何一個(gè)使您的代碼、您的數(shù)據(jù)、您的服務(wù)器或您的一切消失得無(wú)影無(wú)蹤,我、Sun/Oracle 和 IBM® 都將不負(fù)責(zé)任。為以防萬(wàn)一,建議先在虛擬(非常生產(chǎn))環(huán)境中實(shí)驗(yàn)。

  在這個(gè)時(shí)刻您想要的是,在 JVM 消亡之際捕獲堆的一個(gè)快照 — 正好 -XX:+HeapDumpOnOutOfMemoryError 命令可以完成這一操作。

  運(yùn)行該命令通知 JVM 拍攝一個(gè) “堆轉(zhuǎn)儲(chǔ)快照”,并將其保存在一個(gè)文件中以便處理,通常使用 jhat 實(shí)用工具。您可以使用相應(yīng)的 -XX:HeapDumpPath 標(biāo)志指定到保存文件的實(shí)際路徑。(不管文件保存在哪,務(wù)必確保文件系統(tǒng)和/或 Java 流程必須要有權(quán)限配置,可以在其中寫入。)

  3. bootclasspath

  定期將一個(gè)類放入類路徑是很有幫助的,這類路徑與庫(kù)存 JRE 附帶的類路徑或者以某種方式擴(kuò)展的 JRE 類路徑略有不同。(新 Java Crypto API 提供商就是一個(gè)例子)。如果您想要擴(kuò)展 JRE ,那么您定制的實(shí)現(xiàn)必須可以使用引導(dǎo)程序 ClassLoader,該引導(dǎo)程序可以加載 rt.jar 中的 java.lang.Object 及其所有相關(guān)文件。

  盡管您可以 非法打開(kāi) rt.jar 并將您的定制實(shí)現(xiàn)或新數(shù)據(jù)包移入其中,但從技術(shù)上您就違反了您下載 JDK 時(shí)同意的協(xié)議了。

  相反,使用 JVM 自己的 -Xbootclasspath 選項(xiàng),以及皮膚 -Xbootclasspath/p 和 -Xbootclasspath/a。

  -Xbootclasspath 使您可以設(shè)置完整的引導(dǎo)類路徑(這通常包括一個(gè)對(duì) rt.jar 的引用),以及一些其他 JDK 附帶的(不是 rt.jar 的一部分)JAR 文件。-Xbootclasspath/p 將值前置到現(xiàn)有 bootclasspath 中,并將 -Xbootclasspath/a 附加到其中。

  例如,如果您修改了庫(kù)中的 java.lang.Integer,并將修改放在一個(gè)子路徑 mods 下,那么 -Xbootclasspath/a mods 參數(shù)將新 Integer 放在默認(rèn)的參數(shù)前面。

  4. verbose

  對(duì)于虛擬的或任何類型的 Java 應(yīng)用程序,-verbose 是一個(gè)很有用的一級(jí)診斷使用程序。該標(biāo)志有三個(gè)子標(biāo)志:gc、class 和 jni。

  開(kāi)發(fā)人員嘗試尋找是否 JVM 垃圾收集器發(fā)生故障或者導(dǎo)致性能低下,通常首先要做的就是執(zhí)行 gc。不幸的是,解釋 gc 輸出很麻煩 — 足夠?qū)懸槐緯8愀獾氖牵诿钚兄写蛴〉妮敵鲈诓煌?Java 版本中或者不在不同的 JVM 中會(huì)發(fā)生改變,這使得正確解釋變得更難。

  一般來(lái)說(shuō),如果垃圾收集器是一個(gè)分代收集器(多數(shù) “企業(yè)級(jí)” VMs 都是)。某種虛擬標(biāo)志將會(huì)出現(xiàn),來(lái)指出一個(gè)全部清掃 GC 通路;在 Sun JVM 中,標(biāo)志在 GC 輸出行的開(kāi)始以 “[Full GC ...]” 形式出現(xiàn)。

  想要診斷 ClassLoader 和/或不匹配的類沖突,class 可以幫上大忙。它不僅報(bào)告類何時(shí)加載,還報(bào)告類從何處加載,包括到 JAR 的路徑(如果來(lái)自 JAR)。

  jni 很少使用,除了使用 JNI 或本地庫(kù)時(shí)。打開(kāi)時(shí),它將報(bào)告各種 JNI 事件,比如,本地庫(kù)何時(shí)加載,方法何時(shí)彈回;再一次強(qiáng)調(diào),在不同 JVM 版本中,輸出會(huì)發(fā)生變化。

  5. Command-line -X

  我列出了 JVM 中提供的我喜歡的命令行選項(xiàng),但是還有一些更多的需要您自己發(fā)現(xiàn),運(yùn)行命令行參數(shù) -X,列出 JVM 提供的所有非標(biāo)準(zhǔn)(但大部分都是安全的)參數(shù) — 例如:

  • -Xint,在解釋模式下運(yùn)行 JVM(對(duì)于測(cè)試 JIT 編譯器實(shí)際上是否對(duì)您的代碼起作用或者驗(yàn)證是否 JIT 編譯器中有一個(gè) bug,這都很有用)。
  • -Xloggc:,和 -verbose:gc 做同樣的事,但是記錄一個(gè)文件而不輸出到命令行窗口。

  JVM 命令行選項(xiàng)時(shí)常發(fā)生變化,因此,定期查看是一個(gè)好主意。甚至,您深夜盯著監(jiān)控器和下午 5 點(diǎn)回家和妻子孩子吃頓晚飯,(或者在 Mass Effect 2 中消滅您的敵人,根據(jù)您的喜好),它們都是不一樣的。

 結(jié)束語(yǔ)

  在生產(chǎn)環(huán)境中,命令行標(biāo)志不是為永久使用而設(shè)計(jì)的 — 事實(shí)上,除了您終止用來(lái)調(diào)優(yōu) JVM 垃圾收集器的標(biāo)志,沒(méi)有一個(gè)非標(biāo)準(zhǔn)命令行標(biāo)記是專用于生產(chǎn)使用的。但是,作為工具來(lái)刺探在其他方面完全不透明的虛擬機(jī)的內(nèi)部工作,是非常有用的。

【編輯推薦】

  1. 常見(jiàn)JAVA虛擬機(jī)命令行參數(shù)用法介紹
  2. Java編譯器命令行功能
  3. 幾個(gè)Java虛擬機(jī)命令行參數(shù)用法說(shuō)明
  4. J2ME和JVM的概念詳解
  5. 你不知道的5個(gè)Java有用的工具
  6. JVM是什么意思?專家答疑
  7. 經(jīng)驗(yàn)分享 JVM調(diào)優(yōu)方法總結(jié)
  8. 高手支招 Java經(jīng)驗(yàn)分享(一)
責(zé)任編輯:韓亞珊 來(lái)源: IBM developerWorks
相關(guān)推薦

2011-04-02 13:11:35

JARJava

2011-04-02 13:35:21

多線程編程多線程java

2010-10-13 13:20:04

命令行標(biāo)志JVM

2010-05-06 09:16:47

2011-06-01 15:34:23

2010-07-12 10:03:50

ibmdwjava

2015-06-16 10:25:22

2013-06-18 11:05:40

Mac Pro開(kāi)發(fā)工具蘋果

2010-03-19 08:45:20

Windows Pho

2024-01-11 11:28:54

2013-06-26 11:23:40

JVM命令行JavaJVM

2013-06-26 09:01:22

JVMJava

2010-05-19 09:01:00

2011-11-30 13:34:13

2014-11-21 10:25:18

Java

2024-03-25 00:10:00

JSON后端開(kāi)發(fā)

2017-05-02 11:36:00

Java

2015-08-14 16:39:59

軟件開(kāi)發(fā)老板

2024-10-14 12:42:06

2010-08-24 14:08:33

喬布斯
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

天天久久夜夜| 黄视频在线免费看| 日韩av中文字幕一区二区三区| 国产午夜精品麻豆| 国产九九在线观看| 超碰在线免费播放| caoporn国产一区二区| 国产成人精品免高潮费视频| 色哟哟一一国产精品| 亚洲一区二区三区四区电影| 黑人巨大精品欧美一区二区| 中文字幕一区二区三区精彩视频| 欧美一级特黄aaaaaa大片在线观看| 国产亚洲综合精品| 日韩视频免费在线观看| 影音先锋资源av| 亚州一区二区三区| 亚洲无线码一区二区三区| 欧美一区二区在线视频观看| 国产普通话bbwbbwbbw| 国产精品人人爽人人做我的可爱| 日韩在线视频网站| 黄瓜视频污在线观看| 精品视频一区二区三区在线观看| 色综合久久综合网| 800av在线免费观看| 成人午夜电影在线观看| 成人性视频免费网站| 国产欧美日韩中文| 日本中文字幕久久| 国模大胆一区二区三区| 精品国产一区二区三区四区在线观看 | 亚洲综合一区中| 日韩天天综合| 欧美大片在线影院| 精品国产视频一区二区三区| 国产尤物久久久| 亚洲精品动漫100p| 日本精品一二三| 国产欧美88| 欧美日韩在线免费视频| av免费在线播放网站| 国产网红在线观看| 亚洲精品国产高清久久伦理二区| 先锋影音亚洲资源| 精品乱码一区二区三四区视频| jiyouzz国产精品久久| 亚洲已满18点击进入在线看片| 这里只有精品免费视频| 欧美亚洲三级| 欧洲成人在线视频| www.国产高清| 亚洲久久视频| 91精品国产色综合久久不卡98| 玖玖爱免费视频| 国产精品xvideos88| 久久久精品一区| av最新在线观看| 五月天久久久| 久久久久99精品久久久久| 色撸撸在线视频| 久久一区91| 久久精品99久久久香蕉| 日韩亚洲欧美中文字幕| 色狮一区二区三区四区视频| 一区二区三区www| 少妇的滋味中文字幕bd| 91亚洲国产| 欧美插天视频在线播放| 免费在线观看日韩| 亚洲国产精品第一区二区三区| 国内成人精品一区| 日韩av男人天堂| 欧美一区=区| 国产精品久久久久久久久免费| 国产免费a视频| 美女爽到高潮91| 成人a在线视频| 国产富婆一级全黄大片| 成人黄色国产精品网站大全在线免费观看 | 精品免费国产一区二区三区四区| 免费啪视频在线观看| 国产精品色呦| 亚洲人成电影网站| 亚洲精品自拍视频在线观看| 中国成人一区| 国内精品久久久久| 免费一级a毛片| 一区二区三区伦理| 伊人久久影院| 亚洲高清久久网| 女尊高h男高潮呻吟| 精品久久国产| 日韩在线小视频| 欧美日韩成人免费观看| 亚洲欧美日韩国产一区二区| 国产精品人成电影在线观看| a级片免费视频| 91丨九色丨黑人外教| 亚洲午夜久久久影院伊人| 亚洲按摩av| 欧美性猛交xxxx富婆| 日本不卡一区二区在线观看| 成人精品动漫一区二区三区| 国产亚洲精品美女久久久| 四虎免费在线视频| 老鸭窝亚洲一区二区三区| 成人高清视频观看www| 国产成人三级在线观看视频| 国产女主播视频一区二区| 国产高清不卡无码视频| 亚洲成人av观看| 欧美一二三四在线| 国产美女免费网站| 国产一区日韩一区| 国产精品揄拍500视频| 欧美视频久久久| 中文字幕一区二区三区在线观看 | 77777影视视频在线观看| 亚洲综合成人在线| 激情黄色小视频| 西瓜成人精品人成网站| 欧美成人剧情片在线观看| 天天操天天干天天摸| 成人免费毛片片v| 综合操久久久| 蜜桃视频成人m3u8| 精品网站999www| 精品99在线观看| 久久国内精品视频| 日韩亚洲不卡在线| 波多野结衣亚洲| 亚洲国产精品久久久久秋霞蜜臀 | 成人看的视频| 日本欧美黄网站| 日本加勒比一区| 亚洲一区二区不卡免费| 一区二区久久精品| 色婷婷色综合| 国产精品福利在线观看网址| 少妇高潮久久久| 亚洲第一成人在线| 日本xxxx免费| 欧美va亚洲va日韩∨a综合色| 国产精品丝袜视频| h网站视频在线观看| 日本高清不卡视频| av网站免费在线看| 久久综合导航| 日韩wuma| 四虎影视4hu4虎成人| 亚洲天堂日韩电影| 青青国产在线视频| 国产精品欧美经典| 91女神在线观看| 日韩欧美中文| 成人午夜高潮视频| 18网站在线观看| 日韩欧美久久久| 久久精品www| 成人丝袜视频网| 亚洲国产精品无码观看久久| 超碰精品在线观看| 欧美性一区二区三区| 天堂中文在线8| 日韩欧美中文字幕在线观看 | 中文av字幕一区| 国产喷水theporn| 欧美aaaa视频| 亚洲一区二区少妇| 国内在线视频| 精品亚洲一区二区三区| 波多野结衣一二区| 中文字幕一区三区| 无码人妻丰满熟妇区毛片蜜桃精品| 欧美午夜在线| 蜜桃麻豆www久久国产精品| 亚洲伊人av| 日韩在线视频线视频免费网站| 国产成人毛毛毛片| 欧美日韩裸体免费视频| av手机在线播放| 国内国产精品久久| 91九色丨porny丨国产jk| 色综合中文网| 91精品视频大全| cao在线视频| 国产一区二区三区毛片| 国产www视频| 黑人极品videos精品欧美裸| 亚洲天堂精品一区| 国产凹凸在线观看一区二区| 777精品久无码人妻蜜桃| 精品国产一区二区三区四区| 91欧美精品成人综合在线观看| 毛片大全在线观看| 国产亚洲一区二区在线| 国产精品丝袜黑色高跟鞋| 亚洲aⅴ怡春院| 人与嘼交av免费| 成人精品在线视频观看| 999精品视频在线| 黄色亚洲精品| 正在播放一区| 亚洲人成亚洲精品| 91久久精品www人人做人人爽| videos性欧美另类高清| 欧美精品在线观看| fc2在线中文字幕| 亚洲国产精品va在线观看黑人| 中文字幕乱码一区二区| 亚洲成精国产精品女| 99re6热在线精品视频| 成人免费黄色在线| 一级淫片在线观看| 日韩中文字幕不卡| 久久精品国产sm调教网站演员| 久久中文字幕av一区二区不卡| 久久99精品国产一区二区三区| 久久丁香四色| 国产精品一区专区欧美日韩| 中文字幕人成乱码在线观看 | 久久久久.com| 国产精品国三级国产av| 欧美hd在线| 日本一区二区三区视频在线观看| 成人激情自拍| 99九九电视剧免费观看| 欧洲亚洲精品| 国产精品久久久久久久久久久久 | 久久久久久国产精品| 77777影视视频在线观看| 亚洲免费中文字幕| 人妻丰满熟妇av无码区hd| 欧美一区二区三区电影| 一本大道伊人av久久综合| 色婷婷精品大在线视频| 国产又大又黄视频| 天天av天天翘天天综合网色鬼国产| 人妻人人澡人人添人人爽| 国产精品久久三| 国产123在线| 国产三级欧美三级日产三级99 | 国产一区二区网| 影音先锋久久| 91免费国产精品| 在线电影一区二区| 中国老女人av| 91国语精品自产拍| 一区二区三区四区免费观看| 66国产精品| 亚洲国产精品女人| 91精品婷婷色在线观看| 超薄肉色丝袜足j调教99| 亚洲午夜精品一区 二区 三区| 在线精品日韩| 91精品国产乱码久久久久久 | 蜜桃视频网站在线| 久久精品国产欧美激情| 二区在线播放| 欧美人在线视频| 伦理在线一区| 2018国产精品视频| 国产不卡人人| 日本中文字幕久久看| 国产精品字幕| 国产精品亚洲网站| 96视频在线观看欧美| 91手机在线观看| 国产精品视屏| 日本一区二区精品视频| 久久激情电影| 日本大胆人体视频| 99亚洲伊人久久精品影院红桃| 中文字幕乱码人妻综合二区三区| 日韩精品久久理论片| 亚洲精品20p| 国产精品91一区二区| 人妻av一区二区| 久久久精品2019中文字幕之3| 嘿嘿视频在线观看| 又紧又大又爽精品一区二区| 亚洲一区欧美在线| 色88888久久久久久影院按摩| 中文字幕 自拍偷拍| 日韩西西人体444www| 天天在线女人的天堂视频| 在线免费看av不卡| 日本资源在线| 国产97在线播放| 亚洲精品大全| 国产亚洲精品自在久久| 精品国产一区二区三区小蝌蚪 | 高清美女视频一区| 久久国产精彩视频| 成人av观看| 亚洲bt天天射| 伊人久久综合影院| 免费看日b视频| 欧美96一区二区免费视频| 制服.丝袜.亚洲.中文.综合懂| 久久久久亚洲蜜桃| 欧美日韩精品一区二区三区视频播放 | 免费看的黄色录像| 亚洲成人黄色影院| 国产精品毛片一区二区在线看舒淇| 日韩av一卡二卡| 国产盗摄在线观看| 日本在线精品视频| 国产乱论精品| 99精品一区二区三区的区别| 日韩在线一区二区三区| 亚洲精品久久一区二区三区777| 国产欧美日韩久久| 亚洲天堂日韩av| 欧美成人aa大片| 在线免费看av| 日韩av电影中文字幕| 国语一区二区三区| www.黄色网址.com| 毛片不卡一区二区| 无码人妻精品一区二区中文| 一区二区三区成人| 在线观看国产小视频| 亚洲裸体xxxx| а√在线天堂官网| av一区二区三区免费| 国产精品国产三级国产在线观看| 任你操这里只有精品| 99v久久综合狠狠综合久久| 青青草手机视频在线观看| 欧美精选一区二区| 91视频在线观看| 国产精彩精品视频| 精品久久成人| 成人免费视频久久| 26uuu亚洲综合色欧美 | 欧美日韩国产精品| 丰满肉嫩西川结衣av| 精品视频9999| 97色婷婷成人综合在线观看| 丝袜美腿玉足3d专区一区| 久久精品五月| 久久久亚洲av波多野结衣| 狠狠躁夜夜躁人人爽超碰91| 手机在线观看免费av| 久久久免费电影| 国产精品zjzjzj在线观看| 国产黄色片免费在线观看| 成人av在线电影| 日本网站免费观看| 日韩成人av一区| 欧美裸体视频| 日本一区二区在线视频| 日韩国产在线观看一区| 少妇视频在线播放| 欧美美女喷水视频| 黄视频网站在线| 91国产丝袜在线放| 伊人影院久久| 中文字幕免费看| 欧美探花视频资源| 麻豆传媒视频在线| 999国内精品视频在线| 亚洲国产mv| 国产一区二区三区四区五区六区| 欧美日韩一区二区在线观看| 黄色网址在线免费播放| 亚洲综合社区网| 在线国产欧美| 国产熟妇久久777777| 欧美色区777第一页| 国产黄a三级三级三级av在线看| 成人区精品一区二区| 亚洲一区二区成人| 激情五月深爱五月| 欧美tickling网站挠脚心| 麻豆国产在线| 视频一区亚洲| 国产91精品在线观看| 黄色在线免费观看| 日韩在线视频网站| 美女av一区| 高清一区在线观看| 亚洲一区在线观看网站| 欧美女子与性| 91欧美日韩一区| 国产精品综合| 日韩精品久久久久久久的张开腿让| 日韩视频一区二区在线观看| 蜜桃视频在线观看播放| 亚洲一区二区在线看| 成人国产亚洲欧美成人综合网 | 1024手机在线观看你懂的| 欧美一级在线免费| 玛雅亚洲电影| 成人毛片100部免费看| 国产日韩欧美麻豆| 亚洲国产综合网| 国产精品久久久亚洲|