التطبيق والتوزيع في تطبيقات Azure Spring
إشعار
سيتم إهمال الخطط الأساسية والقياسية والمؤسسة بدءا من منتصف مارس 2025، مع فترة تقاعد 3 سنوات. نوصي بالانتقال إلى Azure Container Apps. لمزيد من المعلومات، راجع إعلان إيقاف Azure Spring Apps.
سيتم إهمال الاستهلاك القياسي والخطة المخصصة بدءا من 30 سبتمبر 2024، مع إيقاف التشغيل الكامل بعد ستة أشهر. نوصي بالانتقال إلى Azure Container Apps. لمزيد من المعلومات، راجع ترحيل استهلاك Azure Spring Apps القياسي وخطة مخصصة إلى Azure Container Apps.
تنطبق هذه المقالة على: ✔️ Java ✔️ C#
تنطبق هذه المقالة على: ✔️ Basic/Standard ✔️ Enterprise
التطبيق والتوزيع هما المفهومان الأساسيان في نموذج الموارد لـ Azure Spring Apps. في Azure Spring Apps، يعد التطبيق تجريداً لتطبيق أعمال واحد. يتم توزيع إصدار واحد من التعليمات البرمجية أو البرنامج الثنائي باعتباره التطبيق الذي يتم تشغيله في التوزيع. تعمل التطبيقات في مثيل خدمة Azure Spring Apps، أو ببساطة مثيل الخدمة، كما هو موضح بعد ذلك.
يمكن أن يكون لديك مثيلات خدمة متعددة داخل اشتراك Azure واحد، ولكن Azure Spring Apps Service أسهل في الاستخدام عندما تكون جميع التطبيقات التي يتكون منها تطبيق الأعمال موجودة داخل مثيل خدمة واحد. أحد الأسباب هو أن التطبيقات من المحتمل أن تتواصل مع بعضها البعض. يمكنهم القيام بذلك بسهولة باستخدام سجل خدمة يوريكا في مثيل الخدمة.
تسمح خطة Azure Spring Apps Standard لتطبيق واحد بنشر إنتاج واحد ونشر مرحلي واحد، بحيث يمكنك القيام بنشر أزرق/أخضر عليه بسهولة.
التطبيق
يتم تعريف الميزات/الخصائص التالية على مستوى التطبيق.
الميزات | الوصف |
---|---|
نقطة نهاية عامة |
عنوان URL للوصول إلى التطبيق. |
نطاق مخصص |
CNAME السجل الذي يؤمن المجال المخصص. |
الخدمة ملزمة |
الاتصال الجاهز مع خدمات Azure الأخرى. |
هوية مُدارة |
تسمح الهوية المدارة بواسطة معرف Microsoft Entra لتطبيقك بالوصول بسهولة إلى موارد Microsoft Entra المحمية الأخرى مثل Azure Key Vault. |
التخزين الدائم |
الإعداد الذي يمكن البيانات من الاستمرار بعد إعادة تشغيل التطبيق. |
التوزيع
يتم تعريف الميزات/الخصائص التالية على مستوى النشر، ويتم تبادلها عند تبديل الإنتاج والتوزيع المرحلي.
الميزات | الوصف |
---|---|
CPU | عدد vcores لكل مثيل تطبيق. |
الذاكرة | GB للذاكرة لكل مثيل تطبيق. |
عدد المثيل |
عدد مثيلات التطبيق، التي يتم تعيينها يدويا أو تلقائيا. |
على نطاق والسيارات | عدد مثيلات المقياس تلقائيا استنادا إلى قواعد وجداول محددة مسبقا. |
خيارات JVM |
خيارات JVM لتعيينها. |
متغيرات البيئة |
متغيرات البيئة المراد تعيينها. |
إصدار وقت التشغيل |
إما Java 8 أو Java 11. |
البيئة
تقوم Azure Spring Apps بتحميل بعض ملفات YAML للقراءة فقط على تطبيقاتك المنشورة. تحتوي هذه الملفات على سياق Azure للنشر. تعرض القائمة التالية مسارات ومحتويات ملفات YAML هذه:
/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
إذا كان تطبيقك هو تطبيق Spring Boot، تتم إضافة مساري الملفات هذين إلى SPRING_CONFIG_ADDITIONAL_LOCATION
متغير البيئة. بهذه الطريقة، يمكن لتطبيقك تحميل هذه الخصائص كتكوينات واستخدامها في التعليمات البرمجية الخاصة بك. على سبيل المثال، يمكنك استخدام التعليق التوضيحي @ConfigurationProperties
لربط خصائص YAML بفئة Java. يوضح مقتطف التعليمات البرمجية التالي كيفية إنشاء @Configuration
فئة تمثل سياق 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;
}
}
بالنسبة لأي تطبيقات متعددة اللغات الأخرى، قد تحتاج إلى قراءة الخصائص المقابلة والوصول إليها باستخدام مكتبات قراءة/كتابة الملف المقابل في تطبيقاتك.
القيود
- يجب أن يكون للتطبيق نشر إنتاج واحد. تمنع واجهة برمجة التطبيقات حذف نشر الإنتاج. يجب تبديل التوزيع إلى التقسيم المرحلي قبل حذفه.
- يمكن أن يحتوي التطبيق على توزيعين على الأكثر. تمنع واجهة برمجة التطبيقات إنشاء أكثر من عملية توزيع. التوزيع الثنائي الجديد إما في الإنتاج الحالي أو التوزيع المرحلي.
- إدارة التوزيع غير متوفرة في الخطة الأساسية. استخدم خطة Standard أو Enterprise لإمكانية النشر الأزرق والأخضر.