Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Java için Azure Komut Başlatıcısı (jaz
), Java geliştiricilerinin uygulamalarını Azure'da çalıştırma şeklini basitleştiren basit bir yardımcı programdır.
Bulut ortamları için uyarlanmış Java Sanal Makinesi (JVM) seçeneklerini akıllı bir şekilde uygulayarak yapılandırma jaz
ek yükünü azaltır ve daha iyi performans potansiyeliyle kaynak kullanımını kullanıma hazır hale getirir.
Bu araç, şu işlemleri yapan geliştiriciler için idealdir:
- Ayarlama kılavuzlarına derinlemesine girmeden daha iyi JVM varsayılanları isteme
- Spring Boot, Quarkus veya Micronaut gibi çerçevelerle bulutta yerel mikro hizmetler geliştirme ve dağıtma
- Kubernetes ve OpenShift gibi kapsayıcı tabanlı iş akışlarını tercih etme
- Azure Container Apps, Azure Kubernetes Service, Azure Red Hat OpenShift veya Azure Sanal Makineler'de Java iş yüklerini dağıtma
Önemli Özellikler
- 🛠 Bulut tabanlı dağıtımlar için JVM flamalarını otomatik olarak ayarlayan
-
🚀 Tak çalıştır deneyimi. Dockerfile'ınıza veya başlatma betiğinize yalnızca bırakmanız ve
java
komutunujaz
ile değiştirmeniz yeterli. - ☁️ Azure ortamları için iyileştirilmiş. JVM yapılandırma önerilerini tercih
jaz
ediyorsanız, mevcut komut başlatıcınızdan tüm JVM ayarlama bayraklarını kaldırın - 🔧 Ortam değişkenleri aracılığıyla özelleştirilebilir
Özel Önizleme
Araç, Özel Önizlememize başvuran müşteriler tarafından indirilebilir. Özel Önizleme'ye katılma isteğinizi gönderebilirsiniz .
Nasıl çalışır?
jaz
kapsayıcınız veya sanal makine başlatma komutunuz ile JVM arasında yer alır.
jaz
'yi başlattığınızda:
- Bulut ortamını algılar (örneğin, kapsayıcı sınırları ve kullanılabilir bellek)
- İş yükü türünü analiz eder ve en uygun JVM seçeneklerini seçer
- Aşağıdakiler gibi iyileştirilmiş bayraklarla Java işlemini başlatır:
- Yığın boyutlandırma
- Çöp toplayıcı seçimi ve ayarlama
- İhtiyaç duyulduğunda günlüğe kaydetme ve tanılama ayarları
Örnek Kullanım
JVM seçeneklerinizi el ile ayarlamak yerine:
JAVA_OPTS="-XX:... several JVM tuning flags"
java $JAVA_OPTS -jar myapp.jar
jaz
kullanın:
jaz -jar myapp.jar
Uygulamanız aşağıdakilerden otomatik olarak yararlanabilir:
- Bulut tabanlı ve kapsayıcı iş yükleri için savaşta denenmiş varsayılanlar
- Bulutta daha az bellek israfı
- Daha iyi başlatma ve ısınma performansı
Kurulum
Özel önizleme sürümü aşamasındayken yazılım, x64 ve arm64 ikili dosyaları içeren bir tar.gz
dosyası olarak dağıtılır ve kapsayıcı imajlarına kolayca yüklenebilir.
FROM mcr.microsoft.com/openjdk/jdk:21-ubuntu
# Install jaz
COPY jaz-versionstring.tar.gz /tmp/
RUN tar -xzf /tmp/jaz-versionstring.tar.gz -C / && mv /jaz*/jaz /usr/bin
# Add your application.jar
COPY application.jar /application.jar
CMD ["jaz", "-jar", "application.jar"]
Desteklenen JVM sürümleri
jaz
OpenJDK HotSpot JVM sürüm 8, 11, 17 ve 21'i destekler.
jaz
, Microsoft'un OpenJDK Derlemesi ve Eclipse Temurin ile test edilmiştir.
Konfigürasyon
jaz
komutu yalnızca ortam değişkenleri kullanılarak yapılandırılabilir, bunun için jaz
herhangi bir bağımsız değişkenin java
başlatıcıyla uyumlu olması gerekir.
Ortam Değişkeni | Açıklama |
---|---|
JAZ_HELP |
Yardım iletisini yazdırmak için 1 olarak ayarlayın. |
JAZ_PRINT_VERSION |
1 jaz sürümünü stdout olarak yazdırmak ve 0 koduyla çıkmak için olarak ayarlayın. |
JAZ_DRY_RUN |
1 yazdırılacak Java komutunu göster ve 1 koduyla çıkın. |
JAZ_BYPASS |
1 değerine ayarlayarak jaz iyileştirme ayarlamalarını atlayın. Örneğin, konteynerleştirilmiş ortamlarda java dönüş yapmak kesintiye yol açabilir. Telemetri üzerinde hiçbir etkisi yoktur. |
JAZ_IGNORE_USER_TUNING |
1 Kullanıcı tarafından sağlanan ayarlama args'lerini kırpmak için olarak ayarlayın. Jaz'ın daha fazla durumda JVM'yi ayarlamasına izin verir. |
JAZ_EXIT_WITHOUT_FLUSH |
1 Çıkışta temizleme telemetrisini atlamak için olarak ayarlayın. Verilerin aktarımı sırasında ortaya çıkabilecek gecikmeleri (30 saniyeye kadar) önler. Yine de telemetri gönderebilir. |
JAZ_SKIP_PRINT_FLAGS_FINAL |
1 'ı, -XX:+PrintFlagsFinal 'i atlamak için ayarlayın. Stdout taraması/arabelleğe alma işleminden kaçınır, bu da Jaz'ın son JVM bayraklarını belirlemesi için yaptığı bir işlemdir. |
JAZ_ALWAYS_FILTER_PRINT_FLAGS_FINAL_STDOUT |
1 olarak ayarlayın ki PrintFlagsFinal her zaman stdout'tan filtrelensin. Normalde jaz yalnızca bayrağın geçirildiğini algılarsa filtrelenir. Eğer JAZ_SKIP_PRINT_FLAGS_FINAL ayarlandıysa yoksayılır. |
Yol Haritası
- 📦 Linux paketleri (DEB/RPM) ve kapsayıcı görüntüleri
- ⚙️ JVM Yapılandırma Profilleri
- 📦 AppCDS Desteği
- 📦 Leyden Desteği
- 🔄 Sürekli Ayarlama
- 📊 Prometheus aracılığıyla paylaşılan telemetri
Telemetri
Java için Azure Komut Başlatıcısı, ürünlerimizin ve hizmetlerimizin geliştirilmesine yardımcı olmak için kullanım verilerini toplar ve Microsoft'a gönderir. Daha fazla bilgi edinmek için gizlilik bildirimimizi okuyun.