Megosztás:


Gyakori kérdések a Java Azure Command Launcherével kapcsolatban (nyilvános előzetes verzió)

Választ ad a Java Azure Command Launcherével kapcsolatos gyakori kérdésekre.

Miben különbözik ez az eszköz a Java-parancstól?

A java parancs az alapértelmezett beállításokkal futtatja a HotSpot JVM-et (Java virtuális gépet), kivéve, ha a felhasználó kifejezetten konfigurálja. jaz az Azure Command Launcher for Java egyik összetevője, amely csatatesztelt, felhőoptimalizált JVM-hangolási alapértelmezett beállításokkal indul java el, és az Azure-beli virtuális gépek és -tárolók teljesítményének és költséghatékonyságának javítására lett kialakítva.

Fő előny: a fejlesztőknek nem kell manuálisan hangolniuk a JVM-et. jaz teszi őket.

Mi történik, ha már beállítok néhány JVM-beállítást a környezetemben?

Ha a számítási feladat JVM-hangolási jelzőket tartalmaz, a jaz parancs nem alkalmazza a saját hangolási alapértelmezéseit. jaz a java kiválasztott jelzőkkel indul el.

Javasoljuk, hogy távolítsa el a munkaterhelés hangolási jelzőit, és hagyja, hogy a Java-hoz készült Azure Command Launcher alkalmazza a sajátját.

Konfigurálhatja jaz azt is, hogy figyelmen kívül hagyja a hangjelzőket, és a hangolási alapértelmezett beállításokat használja. Fontolja meg ennek a konfigurációnak a használatát jaz ellenőrzéséhez, miközben minimálisan módosítja a számítási feladatok konfigurációját. Ehhez állítsa be a következő környezeti változót:

export JAZ_IGNORE_USER_TUNING=1

A felhasználó figyelmen kívül hagyása beállítás a parancssori argumentumokra, az általuk beolvasott javakörnyezeti változókra és a @-filesra vonatkozik.

Úgy is konfigurálhatja jaz , hogy kihagyja az összes hangolási alapértelmezett beállítást a következő környezeti változó beállításával:

export JAZ_BYPASS=1

A megkerülési lehetőség lehetővé teszi az Azure Command Launcher for Java üzembe helyezését anélkül, hogy befolyásolná az aktuális hangolást, még akkor is, ha a számítási feladat a java parancs alapértelmezett viselkedését használja. Ez a viselkedés hasznos lehet az eszköz teszteléséhez a JVM hangolójelzőinek törlése előtt.

JVM hangolásának megkerülése is hasznos lehet a hangolással kapcsolatos problémák elhárítása során.

Milyen JVM-beállítások minősülnek hangolási jelzőknek?

A jaz parancs a legtöbb olyan jelzőt figyelembe veszi, amelyek hangjelzővel -X kezdődnek, vagy -XX hangjelzőnek minősülnek, például -Xmx<size>. Figyelemre méltó példa egy olyan zászlóra, amely -X kezdődik, de nem hangolási jelző -Xlog:<opts>.

Pontosabban az egyes JVM-lehetőségek kiértékelése az alábbi listában szereplő logikával történik. Ez a lista az Azure Command Launcher for Java legújabb verziójának logikáját ismerteti.

  1. Ha a beállítás bármilyen más szöveggel kezdődik, mint -X, akkor az nem hangoló beállítás.
  2. Ha a beállítás megfelel valamelyik normál kifejezésnek, az nem hangolásjelző:
    • ^-Xlog.+$
    • ^-XX:ErrorFile=.*$
    • ^-XX:[+-]?HeapDump.*$
    • ^-XX:[+-].*OnOutOfMemoryError$
  3. Ellenkező esetben a beállítás egy finomhangolási jelző.

Ha jaz hangolási jelzőket keres, megvizsgálja a neki átadott argumentumokat és az automatikusan beolvasott környezeti változókat java . A környezeti változók a következők:

  • Java 8: JAVA_TOOL_OPTIONS, _JAVA_OPTIONS
  • Java 9 és újabb verziók: JAVA_TOOL_OPTIONS, , JDK_JAVA_OPTIONS_JAVA_OPTIONS

jaz @-fájlokat is kezel, más néven parancssori argumentumfájlokat.

Átadhatom a Java-ügynök jelzőit az eszköz használatakor?

Yes. Továbbra is átadhat -javaagent és más olyan jelzőket is, amelyek nem hangolnak jelzőket, és jaz tiszteletben tartja őket. A hasznos diagnosztikai jelzőket megtarthatja, például:

  • -Xlog naplózáshoz
  • -javaagent Az Application Insights vagy más alkalmazásteljesítmény-monitorozási (APM-) rendszerállapot-ügynökök esetében

Kompatibilis az eszköz nem Azure-beli környezetekkel?

jaz Elsősorban Azure-tárolókhoz és virtuális gépekhez lett tervezve és tesztelve, de technikailag máshol is futtatható. Egyes fejlett optimalizálások és jövőbeli funkciók azonban Azure-specifikusak lehetnek.

Elérhető az eszköz a Windows Serverhez?

jaz Jelenleg x64-en és arm64-en futó Linux rendszeren érhető el. Ha azonnal szüksége van a Windows Serverre, lépjen velünk kapcsolatba a következő címen: openjdk-support@microsoft.com

Az Azure Command Launcher for Java tesztelése és minősítése csak teljes JDK-telepítéssel történt. Előfordulhat, hogy a következőkkel nem működik megfelelően:

  • JRE (Java Runtime Environment) telepítések
  • Egyéni jlink-futtatók

A teljes JDK-telepítés tartalmazza az összes olyan eszközt és kódtárat, amely jaz a megfelelő működéshez szükséges. Előfordulhat, hogy a JRE és a jlink egyéni futtatókörnyezetek nem rendelkeznek ilyen összetevőkkel, ami megakadályozhatja jaz a várt működést.

Ha jaz-t kell használni, győződjön meg arról, hogy egy támogatott, OpenJDK-alapú buildből származó teljes JDK-telepítést futtat.