著者 |悟空兄弟 ソース | Wukong チャット アーキテクチャ (ID: PassJava666) この実験の目的は、JVM パラメータの 3 つの主要なタイプを説明することです。 JVM チューニングで最もよく使用される XX パラメータは XX パラメータです。 JVM の XX パラメータの表示方法と設定方法もチューニングの基本的なスキルです。このセクションでは、実験的な方法で JVM パラメータを表示および設定する方法について説明します。皆さんがインスピレーションを得られることを願っています。 標準パラメータ 共通標準パラメータ
実践実験1 - 標準パラメータの表示 実験手順: Java JDKのバージョンを確認する
実験1-1 Java JDKのバージョンが1.8.0_131であることがわかります。
実験1-2
実験1-3 Xパラメータ Xパラメータの紹介 ご存知のとおり、一般的に使用されている javac は Java コードを Java クラス ファイルにコンパイルしますが、クラス ファイルを実行するにはどうすればよいでしょうか。ここでは、3 つの X パラメータを使用して、クラス ファイルが仮想マシンでどのように実行されるかを説明します。
ハンズオンラボ 2 - X パラメータの表示と設定 バージョンを表示
WebIDE のコンソール ウィンドウで Java -version を実行すると、自分の環境で Java プログラムが混合モードで実行されていることがわかります。 実験2-1
WebIDEのコンソールウィンドウでコマンドを実行する 実験2-2
実験2-3 XX パラメータ XXパラメータの紹介 XX パラメータには 2 つのタイプがあり、1 つはブール型、もう 1 つはキーと値のペア型です。
ハンズオンラボ 3 - パラメータが有効になっているかどうかを確認する この実験では主に以下の内容を説明します。実行中のJavaプログラムのPrintGCDetailsパラメータがオンになっているかどうかを確認する
WebIDE メニューを右クリックし、「新規ファイル」を選択して新しいファイルを作成します。 新しいファイル demoXXparam.javaという名前のファイルを作成します。 デモXXparam.java WebIDEでdemoXXparam.javaを書く
WebIDEのコンソールウィンドウでdemoXXparam.javaコードをコンパイルします。
コードのコンパイル コンパイル後、作成したdemoXXparamクラスのdemoXXparam.classバイトコードファイルが現在のフォルダに生成されます。 クラスファイルの作成 WebIDEでdemoXXparamコードを実行する
Javaプログラムの実行 出力:
WebIDEで新しいコンソールウィンドウを開く ターミナル -> 新しいターミナル 新しいコンソールウィンドウを開く 実行中のすべてのJavaプログラムを表示します。-lはクラスファイルのパッケージ名を出力することを意味します。
jps demoXXparamプロセスのIDは518であることがわかりました。 demoXXparam プログラムで PrintGCDetails パラメータが有効になっているかどうかを確認します。 PrintGCDetails: ガベージコレクションが発生したときにメモリ回復ログを印刷し、プロセス終了時に各領域の現在のメモリ割り当て状態を出力します。
ジンフォ 結果は次のとおりです。
前述のように、- 記号はオフを意味するため、現在のデモ プログラムでは PrintGCDetails パラメータはオンになっていません。 ハンズオンラボ 4 - パラメータの有効化
実験4
demoXXparamプロセスのIDを表示する プロセスID demoXXparamのプロセスIDが1225であることがわかります。 demoXXparam PrintGCDetails の設定パラメータを表示する 新しいコンソール ウィンドウを開き、次のコマンドを実行して、プロセス 1225 の PrintGCDetails パラメータが有効になっているかどうかを確認します。
PrintGCDetails パラメータ PrintGCDetails がオンになっていることがわかります。+ 記号はオンになっていることを示します。 ハンズオンラボ 5 - キー値型パラメータ値 メタスペースの価値を見る
メタスペースサイズ このことから、メタスペースのサイズは 21M であると結論付けることができます。 メタスペースの値を128Mに設定する
メタスペースのサイズを確認する
メタスペースのサイズ変更 最も一般的な -Xms と -Xmx はどのようなパラメータですか?
エイリアスがありますが、XX パラメータに属します。 ハンズオン ラボ 6 - -XX:InitialHeapSize と -XX:MaxHeapSize の値を設定します。
InitialHeapSize パラメータの値を確認します。この値は 200M です。 InitialHeapSize の設定
MaxHeapSize パラメータの値を確認します。この値は 200M です。 MaxHeapSizeの設定 拡張機能: Javaプログラムに設定されているすべてのパラメータ値を表示する
マーク
XX構成項目の工場出荷時設定とカスタム設定を表示する方法ハンズオン実験 7 - 工場出荷時の設定ですべてのXX構成項目を表示する
印刷フラグ初期値 ハンズオン実験 8 - JVM の現在の XX 構成項目をすべて表示する
印刷フラグ最終 いくつかの重要な情報を確認できます:
たとえば、以前は MetaspaceSize を 128m に変更しましたが、リストには依然として 21m が表示されます。 グローバルフラグ
要約すると: 工場出荷時設定とカスタムパラメータ設定 ハンズオンラボ 9 - プログラム実行時に XX 構成オプションを印刷する
変更された値は157286400(150M)であることがわかります。 プログラム実行時にXX設定オプションを印刷する ハンズオン ラボ 10 - JVM によって自動的に構成されるか、ユーザー (アプリケーションではない) によって手動で設定される XX オプションを表示します。
次のパラメータが印刷されます: XX オプションは JVM によって自動的に設定されます 実験概要 この実験クラスでは、基本パラメータ、Xパラメータ、XXパラメータの表示方法とXXパラメータの設定方法を学びました。また、jps および jinfo ツールを活用してプロセスを表示し、パラメータを設定します。 JVM パフォーマンス チューニングについては、まだ語るべきことがたくさんあり、1 つの記事ですべてを網羅することはできません。主に小さな実験の形で、いくつかの記事に分けます。 この記事はWeChatの公開アカウント「Wukong Talks Architecture」から転載したものです。下のQRコードからフォローできます。この記事を転載する場合はWukong Chat Architecture公式アカウントまでご連絡ください。 |
<<: クラウドコンピューティングがアプリケーション開発に与える影響を探る
>>: エッジインテリジェンス: この技術シフトが受け入れられつつある5つの理由
オンライン マーケティングの誕生以来、オンライン マーケティングの概念は徐々に普及し、ますます多くの...
タオバオと百度が意見の相違を和解させた後、タオバオは自らが築き上げたタオバオの顧客軍団を破壊しようと...
新浪科技報、北京時間12月11日早朝のニュース、ブルームバーグが月曜日に報じたところによると、フラン...
中央銀行は再び第三者決済と中央銀行と協議し、ビットコインの資金調達チェーンを完全に遮断することを望ん...
Racknerd は設立以来、あまりにも多くのプロモーション VPS をリリースしてきました。以前の...
昨日は公開授業をしました。授業の主な内容は「SEOの核となる考え方」でした。今日は授業内容を改めて整...
この記事では、自動車マーケティングに関する私の見解を述べます。私は広告会社で働いており、当初は日用消...
ショートビデオ、セルフメディア、インフルエンサーのためのワンストップサービス2012年から現在まで、...
クラウド ベンダーが顧客との信頼関係を構築し、市場で差別化を図るために変更できる主な方法は 2 つあ...
Xiaomao がウェブサイトの「スタートラインで勝つ」コラムを更新したのはこれで 3 日目です。「...
FtpIt は、SSD ハード ドライブ搭載の OVZ や大容量メモリ搭載の KVM を宣伝してきま...
この記事を読んだ友人は、Taobao Affiliate が何であるか知っていると思います。簡単に言...
chicagovps.net は、安価な Windows VPS のプロモーションを実施しており、ニ...
インターネット時代において、オンラインマーケティングの本質は低コストと高効率です。オンラインメディア...
少し前、多くの淘宝網の販売業者が張立氏を見つけ、自分の店舗の状況を調べるのを手伝ってほしいと頼んだ。...