Aplikasi dan penyebaran di Azure Spring Apps
Catatan
Paket Basic, Standard, dan Enterprise tidak digunakan lagi mulai pertengahan Maret 2025, dengan periode penghentian 3 tahun. Sebaiknya transisi ke Azure Container Apps. Untuk informasi selengkapnya, lihat pengumuman penghentian Azure Spring Apps.
Konsumsi Standar dan paket khusus akan ditolak mulai 30 September 2024, dengan pematian lengkap setelah enam bulan. Sebaiknya transisi ke Azure Container Apps. Untuk informasi selengkapnya, lihat Memigrasikan konsumsi Azure Spring Apps Standard dan paket khusus ke Azure Container Apps.
Artikel ini berlaku untuk: ✔️ Java ✔️ C#
Artikel ini berlaku untuk: ✔️ Basic/Standard ✔️ Enterprise
Aplikasi dan Penyebaran adalah dua konsep utama dalam model sumber daya Azure Spring Apps. Di Azure Spring Apps, Aplikasi adalah abstraksi dari satu aplikasi bisnis. Satu versi kode atau biner yang diterapkan saat Aplikasi berjalan dalam Penyebaran. Aplikasi berjalan dalam instans layanan Azure Spring Apps, atau hanya instans layanan, seperti yang ditunjukkan berikutnya.
Anda dapat memiliki beberapa instans layanan dalam satu langganan Azure, tetapi Layanan Azure Spring Apps paling mudah digunakan ketika semua Aplikasi yang membentuk aplikasi bisnis berada dalam satu instans layanan. Salah satu alasannya adalah bahwa Aplikasi cenderung berkomunikasi satu sama lain. Mereka dapat dengan mudah melakukannya dengan menggunakan registri layanan Eureka dalam instans layanan.
Paket Azure Spring Apps Standard memungkinkan satu Aplikasi untuk memiliki satu penyebaran produksi dan satu penyebaran penahapan, sehingga Anda dapat melakukan penyebaran biru/hijau dengan mudah.
App
Fitur/properti berikut ditentukan pada tingkat aplikasi.
Fitur | Deskripsi |
---|---|
Titik akhir Publik |
URL untuk mengakses aplikasi. |
Domain Kustom |
Catatan CNAME yang mengamankan domain kustom. |
Pengikatan Layanan |
Koneksi di luar kotak dengan layanan Azure lainnya. |
Identitas Terkelola |
Identitas terkelola oleh MICROSOFT Entra ID memungkinkan aplikasi Anda mengakses sumber daya lain yang dilindungi Microsoft Entra dengan mudah seperti Azure Key Vault. |
Penyimpanan Tetap |
Pengaturan yang memungkinkan data bertahan di luar mulai ulang aplikasi. |
Penyebaran
Fitur/properti berikut didefinisikan pada tingkat penyebaran, dan ditukar saat menukar penyebaran produksi dan penahapan.
Fitur | Deskripsi |
---|---|
CPU | Jumlah vcore per instans aplikasi. |
Memori | GB memori per instans aplikasi. |
Hitung Instans |
Jumlah instans aplikasi, diatur secara manual atau otomatis. |
Skala Otomatis | Jumlah instans skala secara otomatis berdasarkan aturan dan jadwal yang telah ditentukan sebelumnya. |
Opsi JVM |
Opsi JVM untuk diatur. |
Variabel Lingkungan |
Variabel lingkungan yang akan diatur. |
Versi Runtime |
Baik Java 8 atau Java 11. |
Lingkungan
Azure Spring Apps memasang beberapa file YAML baca-saja ke aplikasi yang Anda sebarkan. File-file ini berisi konteks Penyebaran Azure. Daftar berikut menunjukkan jalur dan konten file YAML ini:
/etc/azure-spring-cloud/context/azure-spring-apps.yml
AZURE_SPRING_APPS: SUBSCRIPTION_ID: <your-azure-subscription-id> RESOURCE_GROUP: <your-resource-group-name> NAME: <your-azure-spring-apps-name>
/etc/azure-spring-cloud/context/azure-spring-apps-deployment.yml
AZURE_SPRING_APPS: APP: NAME: <your-app-name> DEPLOYMENT: NAME: <your-deployment-name> ACTIVE: true # true if the deployment is in production, false if in staging
Jika aplikasi Anda adalah aplikasi Spring Boot, kedua jalur file ini ditambahkan ke SPRING_CONFIG_ADDITIONAL_LOCATION
variabel lingkungan. Dengan cara ini, aplikasi Anda dapat memuat properti ini sebagai konfigurasi dan menggunakannya dalam kode Anda. Misalnya, Anda dapat menggunakan @ConfigurationProperties
anotasi untuk mengikat properti YAML ke kelas Java. Cuplikan kode berikut menunjukkan cara membuat @Configuration
kelas yang mewakili konteks Azure:
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;
@Configuration
@ConfigurationProperties(prefix = "azure-spring-apps")
@Data
public class AzureSpringAppsContext {
private String subscriptionId;
private String resourceGroup;
private String name;
private AppContext app;
private DeploymentContext deployment;
@Data
public static class AppContext {
private String name;
}
@Data
public static class DeploymentContext {
private String name;
private boolean active;
}
}
Untuk aplikasi poliglot lainnya, Anda mungkin perlu membaca dan mengakses properti yang sesuai dengan menggunakan pustaka baca/tulis file yang sesuai di aplikasi Anda.
Batasan
- Aplikasi harus memiliki satu penyebaran produksi. API memblokir penghapusan penyebaran produksi. Anda harus menukar penyebaran ke penahapan sebelum menghapusnya.
- Aplikasi dapat memiliki paling banyak dua penyebaran. API memblokir pembuatan lebih dari dua penyebaran. Terapkan biner baru Anda ke penyebaran produksi atau proses penahapan yang ada.
- Manajemen penyebaran tidak tersedia dalam paket Dasar. Gunakan paket Standar atau Perusahaan untuk kemampuan penyebaran biru-hijau.