この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 17284|答える: 1

[出典] JVMパラメータオプション

[リンクをコピー]
2020年8月31日 22:20:25に投稿 | | |
JVMパラメータは、-Xまたは-XXから始まるJVMパラメータに基づいて3つの部分に分けます。
1. -から始まる標準VMオプション、VM仕様オプション;
2. -Xで始まるパラメータは非標準(すべてのJVMで実装されるとは限りません)であり、新バージョンに変更がある場合は通知が出されません。
3. -XXで始まるものは不安定であり、本番環境での使用は推奨されません。 これらのパラメータの変更も通知されません。 ブールパラメータオプション:-XX:+ オン、-XX:- オフ。 (例:-XX:+PrintGCDetails)数値パラメータオプションは-XX:=で設定されます。 数値はm/m(メガバイト)、k/k(キロバイト)、g/g(gバイト)などです。 例えば、32Kは32768バイトを意味します。 (例:-XX:MaxPermSize=64m)文字列パラメータオプションは-XX:=で設定され、通常はファイル、パス、コマンドリストを指定するために使われます。 (例:-XX:HeapDumpPath=./java_pid.hprof) コマンド java -help は、Java アプリケーション起動の標準オプションを一覧にできます(付録 Standard VM Parameter Table を参照。JVM 実装は異なります)。 java -Xは非標準パラメータをリストアップできます(これはJVMの拡張です)。 -X関連オプションは標準的ではなく、変更された場合は通知されません。 アプリケーションで現在使われているJVMパラメータを見たい場合は、ManagementFactory.getRuntimeMXBean().getInputArguments()を使えます。

パラメータ名意味デフォルト/注記
-Xms初期ヒープサイズ物理メモリの1/64(<1GB)デフォルトで(MinHeapFreeRatioパラメータは調整可能) 空きヒープメモリが40%未満の場合、JVMは最大限界の-Xmxまでヒープを増やします
-Xmx最大ヒープサイズ物理メモリの1/4(<1GB)のデフォルト(MaxHeapFreeRatioパラメータは調整可能)。空きヒープメモリが70%を超えると、JVMはヒープを最小限界の-xmsまで削減します
-Xmn世代サイズ(JDK 1.4以上)新世代が増えた後、旧世代の規模は縮小されます。 この値はシステムのパフォーマンスに大きな影響を与えます。 Sunは公式にこの構成をスタック全体の3/8に推奨しています
-Xss各スレッドのスタックサイズJDK5.0以降、各スレッドスタックサイズは1Mとなり、それ以前は256Kで、K、M、G単位で対応可能でした
-XX:ThreadStackSize同上0はデフォルト値が使われ、一つにできないことを意味します
-XX:パームサイズ永久代数の初期値を設定します物理メモリの1/64
-XX:MaxPermSize永久発電の最大値を設定物理メモリの1/4
-XX:NewRatio新生代(エデンと2つの生存者ゾーンを含む)と老年期(永久世代を除く)の比率-XX:NewRatio=4とは、新生代と老世の比率が1:4であり、新生代が全体のスタックの1/5を占めることを意味します。Xms=XmxとXmnが設定されており、このパラメータを設定する必要はありません。
-XX:サバイバー比率エデンエリアとサバイバーエリアのサイズ比8に設定すると、2つのサバイバー地域と1つのエデン地域の比率は2:8となり、1つの生存者地域は新生代全体の1/10を占めます
-XX:LargePageSizeInBytesメモリページのサイズを大きく設定しすぎないようにすべきです。パームのサイズに影響を与えるためです=128m
-XX:+UseFastAccessorMethods(高速アクセサー方法)元のタイプの迅速な最適化
-XX:+DisableExplicitGCClose System.gc()このパラメータには厳密なテストが必要です
-XX:最大終身任期閾値ゴミの最大使用年数0に設定されている場合、新世代のオブジェクトはサバイバーエリアを通過せずに直接旧時代に入ります。 古い用途では効率を向上させることができます。 この値を大きく設定すると、新世代のオブジェクトはサバイバー領域で複数回コピーされ、新世代での生存時間が延び、シリアルGCにのみ有効な新世代でリサイクルされる確率が高まります
-XX:+AggressiveOptsスピードアップコンピレーション
-XX:+バイアスドロッキングを使いますロック機構の性能向上
-Xnoclassgcゴミリサイクルを無効にする
-XX:SoftRefLRUPolicyMSPerMB自由空間のメガパイルあたりのSoftReferenceの生存時間1
-XX:PretenureSizeThreshold物体の大きさは老年期に直接分配されます新世代でパラレルスカベンジGCを使う別のケースは無効であり、古い時代に直接割り当てられた場合も、外部参照オブジェクトが存在しない大きな配列オブジェクトです。
-XX:TLAB目標パーセントエデン地域のTLABの割合1%
-XX:+CollectGen0FirstフルGCでYGCが先かどうかfalse
-XX:+UseParallelGCフルGCは並列MSCを使用します[GCパラメータ]を参照してください。[1]
-XX:+UseParNewGC新世代を並行して収集させる設定CMSコレクション、JDK 5.0以降と併用でき、JVMはシステム構成に応じて設定するため、再度この値を設定する必要はありません
-XX:ParallelGCThreadsパラレルコレクタのスレッド数この値はプロセッサ数に等しい設定が最適であり、CMSにも適しています
-XX:+UseParallelOldGC従来のガベージコレクション方式は並列圧縮法ですこれはJAVA 6に登場するパラメータオプションです
-XX:MaxGCPauseMillis新世代の廃棄物収集あたりの最大時間(最大一時停止時間)この時間が達成できない場合、JVMは自動的に新しい世代のサイズをこの値に合わせてリサイズします。
-XX:+UseAdaptiveSizePolicy新しい発電エリアの大きさと、それに対応する生存者エリアの比率を自動的に選択しますこのオプションが設定されると、並列コレクタは自動的に新しい発電エリアの大きさと、ターゲットシステムが指定する最小対応時間または収集周波数を達成するための生存領域の割合を選択します
-XX:GCTimeRatioガベージ収集時間をプログラムの実行時間の割合として設定します式は1/(1+n)です。
-XX:+ScavengeBeforeFullGCYGCに電話する前にフルGCを取るtrue
-XX:+UseConcMarkSweepGCCMSメモリコレクションを活用してくださいテストでこれを設定すると、-XX:NewRatio=4の構成は無効であり、その理由も不明なので、この時点で新世代のサイズを設定するには-Xmnを使うのが最適です
-XX:+AggressiveHeapこの試みは大量の物理メモリを使うことです長期的な大容量メモリ使用の最適化は、計算資源(メモリ、プロセッサ数、少なくとも256MBのメモリ)をチェックできます
-XX:CMS圧縮前の陰鬱GCsメモリ圧縮は何回発生しますか?コンカレントコレクタはメモリ空間を圧縮・整理しないため、一定時間実行後に「断片化」が発生し、動作効率が低下します
-XX:+CMSParallelRemarkEnabled。マーカーの停止が低い
-XX+UseCMSCompactAtFullCollection(フルコレクション使用)を使ったFullGC時代の老年期の圧縮CMSはメモリを移動しないため、断片化が起こりやすくメモリ不足が生じるため、この時点でメモリ圧縮が有効になります。 このパラメータを増やすのは良い習慣です。 性能に影響はありますが、ゴミを除去することは可能です
-XX:+CMSを使います。占有のみを活用しています。手動定義初期化でCMSコレクションを開始するHostSpotは単独でCMS GCをトリガーすることは禁止されています
-XX:CMSInitiatingOccupancyFraction=70CMSの収集は、ゴミの70%がゴミリサイクルに使われた後に始まりますこの値は次の式、CMSInitiatingOccupancyFraction を満たすように設定する必要があります
-XX:CMSInitiatingPermOccupancyFractionパーム生成の使用量は比率に達したときにトリガーするように設定してください92
-XX:+CMSIncrementalModeインクリメンタルモードに設定単一CPUケースでの使用
-XX:+CMSClassUnloadingEnabled恒久的なCMS GC
-XX:+印刷GCGC対数出力-verbose:gcと同じです
-XX:+PrintGCDetails同上詳細
-XX:+PrintGCTimeStamps出力GCタイムスタンプ上記のPrintGCパラメータで使うか、-XX:+PrintGC:PrintGCTimeStampsのような文句を書いてみてください
-XX:+印刷GC:印刷GCTimeStamps-XX:+PrintGC -XX:+PrintGCDetailsと混ぜることができます
-XX:+印刷GCA申請停止時間プログラムが印刷ガベージコレクション中に一時停止する時間。 上記のものと混ぜることができます出力形式:アプリケーションスレッドが停止された合計時間:0.0468229秒
-XX:+印刷GCApplicationConcurrentTime各ガベージコレクションの前にプログラムの途切れのない実行時間を印刷します上記と混用可能で、出力形式:適用時間:0.5291524秒
-XX:+PrintHeapAtGCGCの前後に詳細なスタック情報を印刷してください
-Xloggc:ファイル名関連するログ情報をファイルに記録して分析してください上記の数名でうまく機能します
-XX:+PrintClassヒストグラムコンソールでCtrl+Breakを押した後、クラス情報を印刷します
-XX:+PrintClassHistogramBeforeFullGC印刷前のフルGC
-XX:+PrintTLABTLAB空間の使用状況を見る
XX:+PrintTenuringDistribution各軽度GC後の新たな生存期間の閾値を確認
-EAアサートアサートをオンにする
-Xprofパフォーマンス診断
-シュルンプロフパフォーマンス診断
-XX:+TraceClassLoadingクラスの読み込みプロセスに関する情報を印刷しています[Loaded java.util.AbstractList$Itr from /Library/Java/JavaVirtualMachines/jdk1.8.0_111.jdk/contents/Home/jre/lib/rt.jar] に似ています。
-XX:+TraceClassUnloadingプリントクラスのアンインストールプロセス情報
Xbootclasspathチェックを必要としないクラスの読み込みを指定します必要なプリロードチェックを省略するとロード時間を短縮できますが、安全ではありません
-XX:+PrintCompilationHotspotがJITでコンパイルするメソッド名を印刷してください
-XX:+HeapDumpOnOutOfMemoryError(記憶損失エラー)ヒープダンプを生成する際のOMデフォルトの出力はクラスファイルが格納されているルートフォルダにあります
-XX:HeapDumpPath出力OMダンプパスを設定します-XX:+HeapDumpOnOutOfMemoryErrorの使用

付録

[標準VMパラメータシート]

パラメータ名形容デフォルト
-D3232ビットデータモデル(可能であれば)を使いましょう
-D6464ビットデータモデル(可能であれば)を使いましょう。
-サーバーサーバーVMを選択しますデフォルトのVMはサーバータイプで、サーバーのようなマシン上で動作しているからです。
-cp <ディレクトリおよびzip/jarファイルクラスの検索パス>
-classpath <ディレクトリやzip/jarファイルのクラス検索パス>クラスファイルを検索するには、分離されたディレクトリ、JARアーカイブ、ZIPアーカイブのリストを使用します。
-D<名称>=<值>システムプロパティを設定しましょう
-長文:[クラス、GC、JNI]詳細出力を有効にする
-バージョン製品バージョンを出力して終了します
-<值>バージョン:廃止
-ショーバージョン製品バージョンを出力して続けます
-jre-restrict-search または -no-jre-restrict-search廃止
-? -ヘルプこのヘルプメッセージを出力してください
-X非標準オプションに関する出力サポート
-EA[:< パッケージ名、クラス名>]主張
-enableassertions[:< パッケージ名、クラス名>]指定された粒度での主張を有効にする
-da[:< パッケージ名、クラス名>]
-disableassertions[:< パッケージ名、クラス名>]指定された粒度のアサーションを無効にする
-ESAまたは-enablesystemassertionsシステムのアサーションを有効にする
-DSAまたは-無効システムアサーションシステムの主張を無効にする
-agentlib:<libname>[=<选项>]ネイティブエージェントライブラリ<libname>を読み込みます例えば、-agentlib:hprofも参照してください -agentlib:jdwp=help、-agentlib:hprof=help
-agentpath:<pathname>[=<选项>]ローカルエージェントライブラリをフルパスネームで読み込みます
-javaagent:<jarpath>[=<选项>]Javaプログラミング言語のエージェントを読み込むには、java.lang.instrumentを参照してください。
-スプラッシュ:<imagepath>指定された画像でスプラッシュ画面を表示してください






先の:Nuget Series 1は、プライベートなNugetリポジトリを構築するために asp.net を使用しています
次に:Mysql CURRENT_TIMESTAMPとON UPDATE CURRENT_TIMESTAMP区別されています
 地主| 2022年1月13日 09:50:32に投稿 |


注意:-Xms256m -Xmx1536m はjarパラメータの後に置くことはできません!
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com