Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Spouštěč příkazů Azure pro Javu (jaz) je jednoduchý nástroj, který zjednodušuje, jak vývojáři v Javě spouštějí své aplikace v Azure.
Díky inteligentnímu použití možností prostředí Java Virtual Machine (JVM) přizpůsobených pro cloudová prostředí nástroj snižuje režii na konfiguraci a zlepšuje využití prostředků s vyšším potenciálem pro lepší výkon.
Tento nástroj je ideální pro vývojáře, kteří:
- Potřebujete lepší výchozí hodnoty JVM, aniž byste se ponořili do průvodců laděním.
- Vyvíjejte a nasazujte nativní cloudové mikroslužby pomocí architektur, jako jsou Spring Boot, Quarkus nebo Micronaut.
- Upřednostněte pracovní postupy založené na kontejnerech, jako jsou Kubernetes a OpenShift.
- Nasaďte úlohy Java v Azure Container Apps, Azure Kubernetes Service, Azure Red Hat OpenShift nebo Azure Virtual Machines.
Klíčové funkce
- 🛠 Automaticky optimalizuje příznaky JVM pro cloudově-nativní nasazení.
-
🚀 Zážitek plug-and-play Stačí vložit do souboru Dockerfile nebo spustit skript a nahradit
javapříkaz příkazemjaz. - ☁️ Optimalizováno pro prostředí Azure.
- 🔧 Přizpůsobitelné prostřednictvím proměnných prostředí. Existuje několik způsobů, jak bezpečně zavést změny konfigurace.
Podporovaná prostředí
Spouštěč příkazů Azure pro Javu se dá použít všude, kde je spouštěč Java dostupný v linuxových prostředích. Ověřili a otestovali ho na následujících platformách Azure a CI/CD:
- Azure Kubernetes Service (AKS)
- Azure Container Apps
- Azure App Service
- Azure Functions
- Azure Red Hat OpenShift (ARO)
- Azure Virtual Machines
- Azure DevOps
- GitHub Codespaces
- GitHub Actions
Veřejná ukázka
Spouštěč příkazů Azure pro Javu je teď dostupný ve verzi Public Preview. Přečtěte si oznámení verze Public Preview , kde najdete úvod k tomuto nástroji a jeho výhodám.
Jak to funguje
Spouštěč příkazů Azure pro Javu se nachází mezi vaším kontejnerem nebo spouštěcím příkazem virtuálního počítače a prostředím JVM. Když nástroj spustíte, bude následující:
- Zjistí cloudové prostředí (například limity kontejnerů a dostupnou paměť).
- Analyzuje typ úlohy a vybere nejvhodnější parametry ladění JVM, například:
- Velikost haldy.
- Výběr a ladění garbage kolektoru
- Nastavení protokolování a diagnostiky podle potřeby
- Spustí proces Java, předá mu ladící příznaky a jakékoli argumenty zadané uživatelem.
- Neviditelně přenáší stdout, stderr, stdin a signály OS do a z procesu Java.
- Monitoruje proces Javy a předává jeho ukončovací kód při ukončení.
Příklad využití
Spouštěč příkazů Azure pro Javu je náhradním příkazem java , který nevyžaduje žádné změny kódu. Jednoduše nahraďte ve svých spouštěcích skriptech java za jaz, například nahraďte java -jar foo.jar za jaz -jar foo.jar.
Místo ručního ladění možností prostředí JVM:
JAVA_OPTS="-XX:... several JVM tuning flags"
java $JAVA_OPTS -jar myapp.jar
jaz použijte:
jaz -jar myapp.jar
Vaše aplikace může automaticky těžit z:
- Výchozí hodnoty testované bitvou pro nativní cloudové úlohy a úlohy kontejnerů
- Snížení plýtvání paměti v cloudu.
- Lepší výkon při spuštění a zahřátí.
Instalace
Spouštěč příkazů Azure pro Javu je k dispozici pro platformu x64 i arm64 Linux. Podporované metody instalace:
- Použijte image kontejneru s předinstalovaným nástrojem.
- Nainstalujte do Azure Linuxu.
- Nainstalujte z úložiště softwaru pro Linux pro produkty Microsoftu.
Obrázky kontejnerů
Tento nástroj je součástí image kontejneru pro Microsoft Build OpenJDK. Další nastavení není nutné.
Tento soubor Dockerfile například používá jaz ke spuštění aplikace Java ze jar souboru:
# Use any Microsoft Build of OpenJDK base image
FROM mcr.microsoft.com/openjdk/jdk:25-ubuntu
# Add your application.jar
COPY application.jar /application.jar
# Use jaz to launch your Java application
CMD ["jaz", "-jar", "application.jar"]
Instalace v Azure Linuxu
jaz Nainstalujte balíček pomocí následujícího příkazu:
sudo tdnf install jaz
Instalace z úložiště softwaru pro Linux pro produkty Microsoftu
Pokud jste už nastavili úložiště softwaru pro Linux pro produkty Microsoft, spusťte příslušný příkaz správce balíčků pro vaši distribuci a nainstalujte jaz balíček.
V opačném případě vyhledejte pokyny, které odpovídají vaší distribuci Linuxu, v následujícím seznamu.
Postupujte podle pokynů, ale nainstalujte jaz místo balíčku msopenjdk-25.
Podporované verze prostředí JVM
Spouštěč příkazů Azure pro Javu podporuje sestavení založená na sadě OpenJDK a byla testována s:
- Eclipse Temurin OpenJDK 8 s HotSpot JVM
- Microsoft Build of OpenJDK 11, 17, 21 a 25.
Důležité
Spouštěč příkazů Azure pro Javu vyžaduje úplnou instalaci sady JDK. Není plně testováno s instalacemi pouze JRE nebo s vlastním jlink runtime prostředím. Další informace najdete v tématu "Proč to nefunguje s runtime JRE nebo jlink?".
Konfigurace
Tento jaz příkaz nepoužívá žádné argumenty příkazového řádku pro vlastní konfiguraci.
Místo toho ve výchozím nastavení předává všechny argumenty přímo do java příkazu.
Pokud chcete zajistit, aby jaz konfigurace nenarušovala argumenty vaší aplikace, jaz přijímá konfiguraci pouze prostřednictvím proměnných prostředí.
Příkaz jaz lze nakonfigurovat pomocí těchto proměnných prostředí:
Použití proměnných prostředí místo argumentů příkazového řádku usnadňuje konfiguraci jaz v některých případech.
Při nasazování kontejnerizované aplikace je někdy jednodušší nastavit proměnné prostředí než upravit spouštěcí skripty a experimentování s JAZ_IGNORE_USER_TUNING a JAZ_BYPASS může být užitečné při hodnocení jaz.
Plán cesty
- ⚙️ Konfigurační profily prostředí JVM
- 📦 Podpora AppCDS
- 🔄 Průběžné ladění
- 📊 Telemetrie
- 📦 Podpora pro Leyden
Protokol změn
Public Preview 1: 0.0.0-preview+20251118.1
- Implementujte balíčky RPM a DEB.
- Vylepšete úpravy správce paměti pro uvolnění nevyužité paměti.
- Přestaňte generovat nejasný diagnostický výstup, když program Java skončí s nenulovým kódem.
- Zlepšení předávání signálu operačního systému do procesu Javy, například
SIGTERMaSIGINT.- Zastavení kontejneru, na kterém běží aplikace v Javě, teď dává čas k řádnému vypnutí aplikace.
- Odstraňte používání
PrintFlagsFinalpro zlepšení kompatibility s určitými aplikacemi Java.- Opravit volání
System.console()vyvolávající výjimky - Oprava ukládání streamů do vyrovnávací paměti stdout:
jazuž nezpožďuje předávání výstupu, dokud neuvidí znak nového řádku.
- Opravit volání
- Další opravy chyb a vylepšení interní odolnosti
Soukromý náhled 2
- Opravy chyb.
- Rozšířená kompatibilita distribucí Linuxu díky snížení požadavků na glibc.
-
jaznyní zjistí, jestli je přítomno ruční ladění JVM, a v takovém případě neaplikuje vlastní úpravu. -
JAZ_IGNORE_USER_TUNING=1ignoruje ruční ladění JVM, pokud je přítomné, a místo toho použije vlastní úpravy ladění Jaz. - Opravili jsme
PrintFlagsFinalzobrazení výstupu (pokud není požadováno) při použitíjazs OpenJDK HotSpot JVM 8.
Soukromá ukázka 1
- Počáteční verze spouštěče příkazů Azure pro Javu
Telemetrie
Spouštěč příkazů Azure pro Javu shromažďuje data o využití a odesílá je Microsoftu, aby pomohl vylepšit naše produkty a služby. Další informace najdete v našem prohlášení o zásadách ochrany osobních údajů.