Azure Command Launcher for Java に関する一般的な質問への回答を提供します。
'jaz' と 'java' コマンドの違いは何ですか?
java
コマンドは、ユーザーが明示的に構成しない限り、既定の設定で HotSpot JVM を実行します。
jaz
は、Azure コンテナーと VM のパフォーマンスとコスト効率を向上させるために設計された、戦いでテストされたクラウド最適化 JVM チューニングの既定値を使用して java
を起動します。
主な利点: 開発者は JVM を手動で調整する必要はありません。
jaz
彼らのためにそれを行います。
環境で JVM オプションを既に設定している場合はどうすればよいですか?
ワークロードにチューニング フラグが既に含まれている場合、 jaz
は引き続き機能します。
これらのフラグの機能と必要な理由が正確にわかっていない限り、これらのフラグを削除し、 jaz
独自のフラグを適用することをお勧めします。
特定の設定を保持する場合は、通常どおりに渡すことができます。
jaz
は、最後の java
コマンドの末尾に追加します。
'jaz' を使用しているときにカスタム JVM フラグを渡すとどうなりますか?
はい。
jaz
を使用すると、ユーザーが渡す JVM オプションが優先されます。
ランチャーは、最後の java
コマンド ラインに JVM フラグを追加します。
JVM は最も優先度の高い右端のフラグを処理するため、カスタム設定は一致 jaz
既定値をオーバーライドします。
ただし、特定のフラグが競合する可能性があり、 java
ランチャーが起動しない可能性があります。 たとえば、 jaz
はガベージ コレクターを自動的に選択します。
コマンドで GC 選択フラグ ( -XX:UseZGC
など) も指定されている場合、 java
ランチャーは失敗します。
'java' エージェント フラグと選択的 -XX オプションを 'jaz' で渡すことができますか?
はい。 引き続き、java
を含む任意の-javaagent
引数を渡すことができます。これらはjaz
によって受け入れられます。
推奨事項: -Xmx
、 -XX:MaxRAMPercentage
などの汎用チューニング フラグを削除 jaz
設定します。
次のような便利な診断フラグを保持できます。
-XX:NativeMemoryTracking=summary
-XX:+UnlockDiagnosticVMOptions
-
-Xlog
またはログ記録用の-XX:LogFile
-
-javaagent
Application Insights またはその他の APM インストルメンテーション エージェントの場合
jaz
は、フラグを最終的なコマンドに追加するため、値は、該当する場合 jaz
既定値をオーバーライドします。
トラブルシューティングの目的でチューニングをすべてスキップ jaz
場合は、次の方法を使用できます。
JAZ_BYPASS=1
これは、JVM チューニング フラグをクリーンアップする前に、既存のユーザー指定の JVM 構成または jaz
ランチャーの既定値のみに依存しながら、java
をオンボードする場合に特に便利です。
'jaz' は Azure 以外の環境と互換性がありますか?
jaz
は主に Azure コンテナーと VM 用に設計およびテストされていますが、技術的には他の場所で実行できます。
ただし、一部の高度な最適化と今後の機能は、Azure 固有である可能性があります。
'jaz' は Windows Server で使用できますか?
jaz
は現在、x64 および arm64 環境の Linux で使用できます。
Windows Server がすぐに必要な場合は、〘〗〘〗〘 openjdk-support@microsoft.com