Sdílet prostřednictvím


Nejčastější dotazy ke spouštěči příkazů Azure pro Javu (Public Preview)

Poskytuje odpovědi na běžné otázky týkající se spouštěče příkazů Azure pro Javu.

Jak se tento nástroj liší od příkazu Java?

Příkaz java spustí HotSpot JVM (Java Virtual Machine) s výchozím nastavením, pokud ho uživatel explicitně nenakonfiguruje. jaz je součástí spouštěče příkazů Azure pro Javu, spouštějící java s osvědčenými, pro cloud optimalizovanými výchozími nastaveními ladění JVM, navrženými k zlepšení výkonu a nákladové efektivity na virtuálních strojích a kontejnerech Azure.

Klíčovou výhodu: Vývojáři nemusí ručně ladit prostředí JVM. jaz dělá to pro ně.

Co se stane, když už v prostředí nastavím některé možnosti prostředí JVM?

Pokud vaše úloha obsahuje příznaky ladění JVM, jaz příkaz nepoužije vlastní výchozí nastavení ladění. jaz java spustí s příznaky, které jste zvolili.

Doporučujeme odebrat příznaky ladění úloh a nechat spouštěč příkazů Azure pro Javu použít vlastní.

Můžete také nakonfigurovat jaz , aby ignorovala příznaky ladění a používala výchozí nastavení ladění. Zvažte použití této konfigurace k ověření jaz s minimální změnou konfigurace úloh. Uděláte to tak, že nastavíte následující proměnnou prostředí:

export JAZ_IGNORE_USER_TUNING=1

Nastavení ignorování ladění uživatele platí pro argumenty příkazového řádku, proměnné prostředí přečtené pomocí javaa @-files.

Můžete také nakonfigurovat jaz tak, aby přeskočí všechna výchozí nastavení jeho ladění nastavením následující proměnné prostředí:

export JAZ_BYPASS=1

Možnost obejití umožňuje připojit se ke spouštěči příkazů Azure pro Javu, aniž by to ovlivnilo aktuální ladění, i když vaše úloha používá výchozí chování java příkazu. Toto chování může být užitečné pro ověření chování nástroje před odstraněním parametrů ladění JVM.

Při řešení potíží, které se zdá, že souvisí s laděním JVM, může být také užitečné obejít ladění.

Jaké parametry prostředí JVM se považují za příznaky ladění?

Příkaz jaz považuje většinu příznaků, které začínají s -X nebo -XX, za příznaky ladění, jako je -Xmx<size>. Pozoruhodný příklad příznaku, který začíná -X, ale není příznakem ladění, je -Xlog:<opts>.

Přesněji řečeno, každá možnost JVM se vyhodnocuje pomocí logiky v následujícím seznamu. Tento seznam popisuje logiku v nejnovější verzi spouštěče příkazů Azure pro Javu.

  1. Pokud tato možnost začíná jiným textem než -X, není to příznak ladění.
  2. Pokud se tato možnost shoduje s některým z těchto regulárních výrazů, nejedná se o příznak ladění:
    • ^-Xlog.+$
    • ^-XX:ErrorFile=.*$
    • ^-XX:[+-]?HeapDump.*$
    • ^-XX:[+-].*OnOutOfMemoryError$
  3. V opačném případě je tato možnost příznakem ladění.

Když jaz hledá příznaky ladění, zkontroluje předané argumenty a proměnné prostředí, které java automaticky čte. Proměnné prostředí jsou:

  • Java 8: JAVA_TOOL_OPTIONS, _JAVA_OPTIONS
  • Java 9 a novější: JAVA_TOOL_OPTIONS, JDK_JAVA_OPTIONS_JAVA_OPTIONS

jaz zpracovává také soubory @-files, označované také jako soubory argumentů příkazového řádku.

Je možné při použití nástroje předat parametry agenta Java?

Yes. Stále můžete předat -javaagent a další příznaky, které neslouží k ladění příznaků, a jaz respektovat je. Můžete zachovat užitečné diagnostické příznaky, jako jsou:

  • -Xlog pro protokolování
  • -javaagent pro instrumentační agenty Application Insights nebo jiných agentů instrumentace application Performance Monitoring (APM)

Je nástroj kompatibilní s prostředími mimo Azure?

jaz je navržený a otestovaný především pro kontejnery Azure a virtuální počítače, ale technicky může běžet jinde. Některé pokročilé optimalizace a budoucí funkce ale můžou být specifické pro Azure.

Je nástroj dostupný pro Windows Server?

jaz je aktuálně k dispozici pro Linux v prostředích x64 a arm64. Pokud potřebujete Windows Server okamžitě, kontaktujte nás na adrese openjdk-support@microsoft.com

Spouštěč příkazů Azure pro Javu se testoval a certifikoval pouze s úplnými instalacemi sady JDK. Nemusí správně fungovat s:

  • Instalace prostředí JRE (Java Runtime Environment)
  • Vlastní jlink runtime prostředí

Úplné instalace sady JDK zahrnují všechny nástroje a knihovny, které jaz vyžadují správné fungování. Vlastní runtimy JRE a jlink můžou postrádat některé z těchto komponent, což může bránit jaz ve fungování podle očekávání.

Pokud potřebujete použít jaz, ujistěte se, že používáte úplnou instalaci sady JDK z podporovaného sestavení založeného na openJDK.