日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Java虚拟机(JVM)参数配置说明

發(fā)布時間:2024/4/17 java 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java虚拟机(JVM)参数配置说明 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

http://lavasoft.blog.51cto.com/62575/25492/

Java虛擬機(JVM)參數(shù)配置說明 ? 在Java、J2EE大型應用中,JVM非標準參數(shù)的配置直接關系到整個系統(tǒng)的性能。 JVM非標準參數(shù)指的是JVM底層的一些配置參數(shù),這些參數(shù)在一般開發(fā)中默認即可,不需要任何配置。但是在生產環(huán)境中,為了提高性能,往往需要調整這些參數(shù),以求系統(tǒng)達到最佳新能。 另外這些參數(shù)的配置也是影響系統(tǒng)穩(wěn)定性的一個重要因素,相信大多數(shù)Java開發(fā)人員都見過“OutOfMemory”類型的錯誤。呵呵,這其中很可能就是JVM參數(shù)配置不當或者就沒有配置沒意識到配置引起的。 ? 為了說明這些參數(shù),還需要說說JDK中的命令行工具一些知識做鋪墊。 ? 首先看如何獲取這些命令配置信息說明: 假設你是windows平臺,你安裝了J2SDK,那么現(xiàn)在你從cmd控制臺窗口進入J2SDK安裝目錄下的bin目錄,然后運行java命令,出現(xiàn)如下結果,這些就是包括java.exe工具的和JVM的所有命令都在里面。 ? ----------------------------------------------------------------------- D:\j2sdk15\bin>java Usage: java [-options] class [args...] ?????????? (to execute a class) ?? or? java [-options] -jar jarfile [args...] ?????????? (to execute a jar file) ? where options include: ??? -client?????? to select the "client" VM ??? -server?????? to select the "server" VM ??? -hotspot????? is a synonym for the "client" VM? [deprecated] ????????????????? The default VM is client. ? ??? -cp <class search path of directories and zip/jar files> ??? -classpath <class search path of directories and zip/jar files> ????????????????? A ; separated list of directories, JAR archives, ????????????????? and ZIP archives to search for class files. ??? -D<name>=<value> ????????????????? set a system property ??? -verbose[:class|gc|jni] ????????????????? enable verbose output ??? -version????? print product version and exit ??? -version:<value> ????????????????? require the specified version to run ??? -showversion? print product version and continue ??? -jre-restrict-search | -jre-no-restrict-search ????????????????? include/exclude user private JREs in the version search ??? -? -help????? print this help message ??? -X??????????? print help on non-standard options ??? -ea[:<packagename>...|:<classname>] ??? -enableassertions[:<packagename>...|:<classname>] ????????????????? enable assertions ??? -da[:<packagename>...|:<classname>] ??? -disableassertions[:<packagename>...|:<classname>] ????????????????? disable assertions ??? -esa | -enablesystemassertions ????????????????? enable system assertions ??? -dsa | -disablesystemassertions ????????????????? disable system assertions ??? -agentlib:<libname>[=<options>] ????????????????? load native agent library <libname>, e.g. -agentlib:hprof ??????????????????? see also, -agentlib:jdwp=help and -agentlib:hprof=help ??? -agentpath:<pathname>[=<options>] ????????????????? load native agent library by full pathname ??? -javaagent:<jarpath>[=<options>] ????????????????? load Java programming language agent, see java.lang.instrument ----------------------------------------------------------------------- 在控制臺輸出信息中,有個-X(注意是大寫)的命令,這個正是查看JVM配置參數(shù)的命令。 ? 其次,用java -X 命令查看JVM的配置說明: 運行后如下結果,這些就是配置JVM參數(shù)的秘密武器,這些信息都是英文的,為了方便閱讀,我根據(jù)自己的理解翻譯成中文了(不準確的地方還請各位博友斧正) ----------------------------------------------------------------------- D:\j2sdk15\bin>java -X ??? -Xmixed?????????? mixed mode execution (default) ??? -Xint???????????? interpreted mode execution only ??? -Xbootclasspath:<directories and zip/jar files separated by ;> ????????????????????? set search path for bootstrap classes and resources ??? -Xbootclasspath/a:<directories and zip/jar files separated by ;> ????????????????????? append to end of bootstrap class path ??? -Xbootclasspath/p:<directories and zip/jar files separated by ;> ????????????????????? prepend in front of bootstrap class path ??? -Xnoclassgc?????? disable class garbage collection ??? -Xincgc?????????? enable incremental garbage collection ??? -Xloggc:<file>??? log GC status to a file with time stamps ??? -Xbatch?????????? disable background compilation ??? -Xms<size>??????? set initial Java heap size ??? -Xmx<size>??????? set maximum Java heap size ??? -Xss<size>??????? set java thread stack size ??? -Xprof??????????? output cpu profiling data ??? -Xfuture????????? enable strictest checks, anticipating future default ??? -Xrs????????????? reduce use of OS signals by Java/VM (see documentation) ??? -Xcheck:jni?????? perform additional checks for JNI functions ??? -Xshare:off?????? do not attempt to use shared class data ??? -Xshare:auto????? use shared class data if possible (default) ??? -Xshare:on??????? require using shared class data, otherwise fail. ? The -X options are non-standard and subject to change without notice. ----------------------------------------------------------------------- ? JVM配置參數(shù)中文說明: ----------------------------------------------------------------------- 1、-Xmixed?????????? mixed mode execution (default) ?混合模式執(zhí)行 ? 2、-Xint???????????? interpreted mode execution only ?解釋模式執(zhí)行 ? 3、-Xbootclasspath:<directories and zip/jar files separated by ;> ????? set search path for bootstrap classes and resources ?設置zip/jar資源或者類(.class文件)存放目錄路徑 ? 3、-Xbootclasspath/a:<directories and zip/jar files separated by ;> ????? append to end of bootstrap class path ?追加zip/jar資源或者類(.class文件)存放目錄路徑 ? 4、-Xbootclasspath/p:<directories and zip/jar files separated by ;> ????? prepend in front of bootstrap class path ?預先加載zip/jar資源或者類(.class文件)存放目錄路徑 ? 5、-Xnoclassgc?????? disable class garbage collection ?關閉類垃圾回收功能 ? 6、-Xincgc?????????? enable incremental garbage collection ?開啟類的垃圾回收功能 ? 7、-Xloggc:<file>??? log GC status to a file with time stamps ?記錄垃圾回日志到一個文件。 ? 8、-Xbatch?????????? disable background compilation ?關閉后臺編譯 ? 9、-Xms<size>??????? set initial Java heap size ?設置JVM初始化堆內存大小 ? 10、-Xmx<size>??????? set maximum Java heap size ?設置JVM最大的堆內存大小 ? 11、-Xss<size>??????? set java thread stack size ?設置JVM棧內存大小 ? 12、-Xprof??????????? output cpu profiling data ?輸入CPU概要表數(shù)據(jù) ? 13、-Xfuture????????? enable strictest checks, anticipating future default ?執(zhí)行嚴格的代碼檢查,預測可能出現(xiàn)的情況 ? 14、-Xrs????????????? reduce use of OS signals by Java/VM (see documentation) ?通過JVM還原操作系統(tǒng)信號 ? 15、-Xcheck:jni?????? perform additional checks for JNI functions ?對JNI函數(shù)執(zhí)行檢查 ? 16、-Xshare:off?????? do not attempt to use shared class data ?盡可能不去使用共享類的數(shù)據(jù) ? 17、-Xshare:auto????? use shared class data if possible (default) ?盡可能的使用共享類的數(shù)據(jù) ? 18、-Xshare:on?????? require using shared class data, otherwise fail. ?盡可能的使用共享類的數(shù)據(jù),否則運行失敗 ? The -X options are non-standard and subject to change without notice. ----------------------------------------------------------------------- ? 怎么用這這些參數(shù)呢?其實所有的命令行都是這么一用,下面我就給出一個最簡單的HelloWorl的例子來演示這個參數(shù)的用法,非常的簡單。 ? HelloWorld.java ----------------------------------------------- public class? HelloWorld { ?public static void main(String[] args) ?{ ??System.out.println("Hello World!"); ?} } ? 編譯并運行: D:\j2sdk15\bin>javac HelloWorld.java ? D:\j2sdk15\bin>java -Xms256M -Xmx512M HelloWorld Hello World! ? 呵呵,這下滿足了吧! ? 實踐:在大型系統(tǒng)或者應用中配置JVM參數(shù) 比如你配置IDE工具的參數(shù),常見的有IDEA、Eclipse,這個是在一個配置文件中指定即可。 如果你要在J2EE環(huán)境中配置這些參數(shù),那么你需要在J2EE應用服務器或者Servlet容器相關啟動參數(shù)設置處指定,其啟動文件中來配置,Tomcat是在catalina.bat中配置,weblogic和websphere是在其他地方,具體我就說了,相信玩過的這些大型服務器的人都知道,沒玩過的看看這篇文章,玩玩就知道了,呵呵。 ? 另外常常有人問到jdk的一些相關命令用法,其實,當你看到這里的時候,你應該知道如何獲取這些命令的用法了。如果你還不會,那么,建議你去學學DOS,我是沒轍了。如果你會這些,還是沒有看明白,那么你趕緊學學英語吧,這樣你就能看懂了。 ? 另外:我在最后給出常用的幾個Java命令行說明,以供參考: ? (1)、javac 用法:javac <選項> <源文件> 其中,可能的選項包括: ? -g???????????????????????? 生成所有調試信息 ? -g:none??????????????????? 不生成任何調試信息 ? -g:{lines,vars,source}???? 只生成某些調試信息 ? -nowarn??????????????????? 不生成任何警告 ? -verbose?????????????????? 輸出有關編譯器正在執(zhí)行的操作的消息 ? -deprecation?????????????? 輸出使用已過時的 API 的源位置 ? -classpath <路徑>??????????? 指定查找用戶類文件的位置 ? -cp <路徑>?????????????????? 指定查找用戶類文件的位置 ? -sourcepath <路徑>?????????? 指定查找輸入源文件的位置 ? -bootclasspath <路徑>??????? 覆蓋引導類文件的位置 ? -extdirs <目錄>????????????? 覆蓋安裝的擴展目錄的位置 ? -endorseddirs <目錄>???????? 覆蓋簽名的標準路徑的位置 ? -d <目錄>??????????????????? 指定存放生成的類文件的位置 ? -encoding <編碼>???????????? 指定源文件使用的字符編碼 ? -source <版本>?????????????? 提供與指定版本的源兼容性 ? -target <版本>?????????????? 生成特定 VM 版本的類文件 ? -version?????????????????? 版本信息 ? -help????????????????????? 輸出標準選項的提要 ? -X???????????????????????? 輸出非標準選項的提要 ? -J<標志>???????????????????? 直接將 <標志> 傳遞給運行時系統(tǒng) ? (2)、jar 用法:jar {ctxu}[vfm0Mi] [jar-文件] [manifest-文件] [-C 目錄] 文件名 ... 選項: ??? -c? 創(chuàng)建新的存檔 ??? -t? 列出存檔內容的列表 ??? -x? 展開存檔中的命名的(或所有的〕文件 ??? -u? 更新已存在的存檔 ??? -v? 生成詳細輸出到標準輸出上 ??? -f? 指定存檔文件名 ??? -m? 包含來自標明文件的標明信息 ??? -0? 只存儲方式;未用ZIP壓縮格式 ??? -M? 不產生所有項的清單(manifest〕文件 ??? -i? 為指定的jar文件產生索引信息 ??? -C? 改變到指定的目錄,并且包含下列文件: 如果一個文件名是一個目錄,它將被遞歸處理。 清單(manifest〕文件名和存檔文件名都需要被指定,按'm' 和 'f'標志指定的相同順序。 ? 示例1:將兩個class文件存檔到一個名為 'classes.jar' 的存檔文件中: ?????? jar cvf classes.jar Foo.class Bar.class 示例2:用一個存在的清單(manifest)文件 'mymanifest' 將 foo/ 目錄下的所有 ?????????? 文件存檔到一個名為 'classes.jar' 的存檔文件中: ?????? jar cvfm classes.jar mymanifest -C foo/ . ? (3)、javadoc javadoc: 錯誤 - 未指定軟件包或類。 用法:javadoc [選項] [軟件包名稱] [源文件] [@file] -overview <文件>????????? 讀取 HTML 文件的概述文檔 -public?????????????????? 僅顯示公共類和成員 -protected??????????????? 顯示受保護/公共類和成員(默認) -package????????????????? 顯示軟件包/受保護/公共類和成員 -private????????????????? 顯示所有類和成員 -help???????????????????? 顯示命令行選項并退出 -doclet <類>????????????? 通過替代 doclet 生成輸出 -docletpath <路徑>??????? 指定查找 doclet 類文件的位置 -sourcepath <路徑列表>??? 指定查找源文件的位置 -classpath <路徑列表>???? 指定查找用戶類文件的位置 -exclude <軟件包列表>???? 指定要排除的軟件包的列表 -subpackages <子軟件包列表> 指定要遞歸裝入的子軟件包 -breakiterator??????????? 使用 BreakIterator 計算第 1 句 -bootclasspath <路徑列表> 覆蓋引導類加載器所裝入的 ????????????????????????? 類文件的位置 -source <版本>??????????? 提供與指定版本的源兼容性 -extdirs <目錄列表>?????? 覆蓋安裝的擴展目錄的位置 -verbose????????????????? 輸出有關 Javadoc 正在執(zhí)行的操作的消息 -locale <名稱>??????????? 要使用的語言環(huán)境,例如 en_US 或 en_US_WIN -encoding <名稱>????????? 源文件編碼名稱 -quiet??????????????????? 不顯示狀態(tài)消息 -J<標志>????????????????? 直接將 <標志> 傳遞給運行時系統(tǒng) ? 通過標準 doclet 提供: -d <目錄>???????????????????????? 輸出文件的目標目錄 -use????????????????????????????? 創(chuàng)建類和軟件包用法頁面 -version????????????????????????? 包含 @version 段 -author?????????????????????????? 包含 @author 段 -docfilessubdirs????????????????? 遞歸復制文檔文件子目錄 -splitindex?????????????????????? 將索引分為每個字母對應一個文件 -windowtitle <文本>?????????????? 文檔的瀏覽器窗口標題 -doctitle <html 代碼>???????????? 包含概述頁面的標題 -header <html 代碼>?????????????? 包含每個頁面的頁眉文本 -footer <html 代碼>?????????????? 包含每個頁面的頁腳文本 -bottom <html 代碼>?????????????? 包含每個頁面的底部文本 -link <url>?????????????????????? 創(chuàng)建指向位于 <url> 的 javadoc 輸出的鏈接 -linkoffline <url> <url2>???????? 利用位于 <url2> 的軟件包列表鏈接至位于 <url> 的文檔 -excludedocfilessubdir <名稱 1>:..排除帶有給定名稱的所有文檔文件子目錄。 -group <名稱> <p1>:<p2>..???????? 在概述頁面中,將指定的軟件包分組 -nocomment??????????????????????? 抑止描述和標記,只生成聲明。 -nodeprecated???????????????????? 不包含 @deprecated 信息 -noqualifier <名稱 1>:<名稱 2>:...從輸出中排除限定符的列表。 -nosince????????????????????????? 不包含 @since 信息 -notimestamp????????????????????? 不包含隱藏時間戳 -nodeprecatedlist???????????????? 不生成已過時的列表 -notree?????????????????????????? 不生成類分層結構 -noindex????????????????????????? 不生成索引 -nohelp?????????????????????????? 不生成幫助鏈接 -nonavbar???????????????????????? 不生成導航欄 -serialwarn?????????????????????? 生成有關 @serial 標記的警告 -tag <名稱>:<位置>:<標題>???????? 指定單個變量自定義標記 -taglet?????????????????????????? 要注冊的 Taglet 的全限定名稱 -tagletpath?????????????????????? Taglet 的路徑 -charset <字符集>???????????????? 用于跨平臺查看生成的文檔的字符集。 -helpfile <文件>????????????????? 包含幫助鏈接所鏈接到的文件 -linksource?????????????????????? 以 HTML 格式生成源 -sourcetab <制表符長度>?????????? 指定源中每個制表符占據(jù)的空格數(shù) -keywords???????????????????????? 使軟件包、類和成員信息附帶 HTML 元標記 -stylesheetfile <路徑>??????????? 用于更改生成文檔的樣式的文件 -docencoding <名稱>?????????????? 輸出編碼名稱 ? (4)、rmid rmid: 非法選項:-? 用法:rmid <option> ? 其中,<option> 包括: ? -port <option>??????? 指定供 rmid 使用的端口 ? -log <directory>??? 指定 rmid 將日志寫入的目錄 ? -stop?????????????? 停止當前的 rmid 調用(對指定端口) ? -C<runtime 標記>??? 向每個子進程傳遞參數(shù)(激活組) ? -J<runtime 標記>??? 向 java 解釋程序傳遞參數(shù) ? ? 還有很多,下班了,放假了,HOHO,五一來了之后再寫吧! ? 有關更多的java命令可以參考一下這個文章:[url]http://ruruhuang.javaeye.com/blog/47564[/url] http://kenwublog.com/docs/java6-jvm-options-chinese-edition.htm

?

/usr/local/jdk/bin/java -Dresin.home=/usr/local/resin -server -Xms1800M -Xmx1800M -Xmn300M -Xss512K -XX:PermSize=300M -XX:MaxPermSize=300M -XX:SurvivorRatio=8 -XX:MaxTenuringThreshold=5 -XX:GCTimeRatio=19 -Xnoclassgc -XX: DisableExplicitGC -XX: UseParNewGC -XX: UseConcMarkSweepGC -XX: UseCMSCompactAtFullCollection -XX:CMSFullGCsBeforeCompaction=0 -XX:-CMSParallelRemarkEnabled -XX:CMSInitiatingOccupancyFraction=70 -XX:SoftRefLRUPolicyMSPerMB=0 -XX: PrintClassHistogram -XX: PrintGCDetails -XX: PrintGCTimeStamps -XX: PrintHeapAtGC -Xloggc:log/gc.log

這是我的配置,對應的網站是shedewang.com,72小時之內沒有任何停頓。供參考,但是特殊情況需特殊處理,經驗之談是多看看gc日志堆棧的變化,有問題用jstack,jmap等工具查看哪些地方出了問題,這樣可以更快的作出優(yōu)化。我是32位LinuxAS4,jdk6.0的

實踐是檢驗真理的唯一標準。Good Luck ^_^

?

=======================64 bit java

?-d32????????? use a 32-bit data model if available

??? -d64????????? use a 64-bit data model if available
??? -server?????? to select the "server" VM
????????????????? The default VM is server.
?????????????????
??? -cp <class search path of directories and zip/jar files>
??? -classpath <class search path of directories and zip/jar files>
????????????????? A : separated list of directories, JAR archives,
????????????????? and ZIP archives to search for class files.
??? -D<name>=<value>
????????????????? set a system property
??? -verbose[:class|gc|jni]
????????????????? enable verbose output
??? -version????? print product version and exit
??? -version:<value>
????????????????? require the specified version to run
??? -showversion? print product version and continue
??? -jre-restrict-search | -jre-no-restrict-search
????????????????? include/exclude user private JREs in the version search
??? -? -help????? print this help message
??? -X??????????? print help on non-standard options
??? -ea[:<packagename>...|:<classname>]
??? -enableassertions[:<packagename>...|:<classname>]
????????????????? enable assertions
??? -da[:<packagename>...|:<classname>]
??? -disableassertions[:<packagename>...|:<classname>]
????????????????? disable assertions
??? -esa | -enablesystemassertions
????????????????? enable system assertions
??? -dsa | -disablesystemassertions
????????????????? disable system assertions
??? -agentlib:<libname>[=<options>]
????????????????? load native agent library <libname>, e.g. -agentlib:hprof
??????????????????? see also, -agentlib:jdwp=help and -agentlib:hprof=help
??? -agentpath:<pathname>[=<options>]
????????????????? load native agent library by full pathname
??? -javaagent:<jarpath>[=<options>]
????????????????? load Java programming language agent, see java.lang.instrument
??? -splash:<imagepath>
????????????????? show splash screen with specified image

?

總結

以上是生活随笔為你收集整理的Java虚拟机(JVM)参数配置说明的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 欧美日韩第一区 | av一区不卡| 毛片av免费 | 日日干夜夜骑 | 双性人bbww欧美双性 | 久草中文在线视频 | 色婷婷综合久久 | 日本公妇乱偷中文字幕 | 齐天大性床战铁扇公主 | 欧美视频一区二区三区 | 天天色天天综合 | 亚洲精品国产精品国自产网站按摩 | 日日噜噜噜噜久久久精品毛片 | 亚洲www视频 | 啦啦啦免费高清视频在线观看 | 欧洲性生活视频 | 91精品国产色综合久久不卡蜜臀 | 国产成人综合在线观看 | 午夜视频色 | 黄色特级视频 | 亚洲精品乱码久久久久久按摩观 | 久久官网 | av导航网址| 少妇媚药按摩中文字幕 | 久草视频2 | 欧美无砖专区免费 | 国产精品久久久久99 | 欧美影视 | 久久人人添人人爽添人人片 | 国产乱子伦精品无码专区 | 伊人66 | 成人 黄 色 免费播放 | a级在线播放 | 久久bb| 久久久久久久久久国产精品 | 天堂一二三区 | 亚洲午夜视频在线观看 | 黄色香蕉视频 | 日本亚洲黄色 | 国产在线观看xxx | 欧美伊人久久 | 香蕉视频免费在线看 | 亚洲一区二区中文 | 国产一区二区在线播放视频 | 制服丝袜在线看 | 免费观看在线观看 | 极品久久久久 | 最好看的电影2019中文字幕 | 蜜桃av久久久亚洲精品 | 免费成人在线观看动漫 | 精品国内自产拍在线观看视频 | 中国一区二区视频 | 瑟瑟综合| 善良的女邻居在线观看 | 男人日女人免费视频 | 青青草视频免费观看 | 国产色站 | 日日摸日日添日日躁av | 国产国语亲子伦亲子 | 蜜臀久久99精品久久久久宅男 | 91综合色 | 国产精品传媒一区二区 | 日韩欧美在线第一页 | 天天舔天天操天天干 | 香蕉视频链接 | 久久精品视频久久 | 2020国产在线 | 久久久久久久国产视频 | 欧美一区二区三区不卡视频 | a天堂在线 | 国产精品99久久久久久人 | 男女性杂交内射妇女bbwxz | 免费观看黄色小视频 | 美女色av | 成人听书哪个软件好 | 色葡萄影院| 性中国古装videossex | 一区二区中文在线 | 亚洲热热 | 视频一区二区在线播放 | 欧美成人一区二免费视频软件 | 蜜臀av免费在线观看 | 91九色蝌蚪91por成人 | 三级黄色片免费 | 91午夜交换视频 | 色婷五月 | 欧美高h视频 | 国产精品久久久久三级无码 | 中文字幕免费视频观看 | 在线视频污 | 二区视频在线观看 | 色狠狠干 | 韩国黄色网址 | 另类尿喷潮videofree | 成年人午夜视频 | 日本久久亚洲 | 国产综合视频 | 成人mv| 欧洲成人在线观看 |