واجهات برمجة تطبيقات الخدمات المصغرة التي يتم تشغيلها بواسطة Dapr

توفر Azure Container Apps واجهات برمجة التطبيقات التي يتم تشغيلها بواسطة وقت تشغيل التطبيق الموزع (Dapr) التي تساعدك على كتابة وتنفيذ الخدمات المصغرة البسيطة والمحمولة والمرنة والمؤمنة. يعمل Dapr مع Azure Container Apps كطبقة تجريد لتوفير نظام أساسي منخفض الصيانة وقابل للتطوير.

تقدم Azure Container Apps مجموعة مختارة من واجهات برمجة تطبيقات Dapr المدارة بالكامل والمكونات والميزات، التي تلبي خصيصا سيناريوهات الخدمات المصغرة. ما عليك سوى تمكين Dapr وتكوينه كالمعتاد في بيئة تطبيق الحاوية.

إشعار

ابحث عن التحديثات وإعلانات الإصدار ل Dapr في Azure Container Apps في GitHub.

كيفية عمل واجهات برمجة التطبيقات للخدمات المصغرة مع تطبيق الحاوية

قم بتكوين واجهات برمجة تطبيقات الخدمات المصغرة لبيئة تطبيقات الحاوية الخاصة بك باستخدام تطبيق حاوية يدعم Dapr، ومكون Dapr تم تكوينه للحل الخاص بك، و Dapr sidecar يستدعي الاتصال بينهما. يوضح الرسم التخطيطي التالي هذه المفاهيم الأساسية، باستخدام واجهة برمجة التطبيقات pub/sub كمثال.

رسم توضيحي يوضح منتدى Dapr للنشر وكيف يعمل في تطبيقات الحاويات.

تسميه إعدادات Dapr ‏‏الوصف
1 تطبيقات الحاوية مع تمكين Dapr يتم تمكين Dapr على مستوى تطبيق الحاوية عن طريق تكوين مجموعة من وسيطات Dapr. تنطبق هذه القيم على جميع مراجعات تطبيق حاوية معين عند التشغيل في وضع مراجعات متعددة.
2 Dapr يتم عرض واجهات برمجة تطبيقات Dapr المدارة بالكامل لكل تطبيق حاوية من خلال Dapr sidecar. يمكن استدعاء واجهات برمجة التطبيقات Dapr من تطبيق الحاوية الخاص بك عبر HTTP أو gRPC. يعمل Dapr sidecar على منفذ HTTP 3500 ومنفذ gRPC 50001.
3 تكوين مكون Dapr يستخدم Dapr تصميما نمطيا حيث يتم تسليم الوظائف كمكون. يمكن مشاركة مكونات Dapr عبر تطبيقات حاوية متعددة. تحدد معرفات تطبيق Dapr المتوفرة في صفيف النطاقات تطبيقات الحاوية الممكنة ل dapr التي تقوم بتحميل مكون معين في وقت التشغيل.

تعيين الإصدار

بدلا من اتباع جدول إصدار ثابت، تصدر Dapr في Azure Container Apps ميزات ووظائف جديدة استنادا إلى ترتيب الأولويات والاستقرار في ثنائيات Dapr. لمعرفة المزيد عن إصدارات Dapr في Azure Container Apps، راجع كم مرة يتم إصدار إصدارات Dapr.

تتضمن إصدارات Dapr في Azure Container Apps ما يلي:

  • بادئة دلالية لإصدار الإصدارات، مثل 1.13.6، تدل على التوافق مع واجهات برمجة تطبيقات وقت التشغيل لإصدار OSS Dapr والأدوات ذات الصلة مثل SDKs وCLI.
  • -msft.<number> لاحقة، تشير إلى دمج التخصيصات الخاصة ب Azure لتحسين الأمان والاستعداد للإنتاج.

يمكن أن يبدو تنسيق الإصدار الكامل ل Dapr في Azure Container Apps شيئا مثل 1.13.6-msft.1.

إشعار

قد لا يتزايد الرقم <number> في اللاحقة دائما بشكل متسلسل. على سبيل المثال، قد يتخطى 1.13.6-msft.2الإصدار 1.13.6-msft.3 .

واجهات برمجة تطبيقات Dapr المدعومة والمكونات والأدوات

واجهات برمجة التطبيقات المدارة

توفر Azure Container Apps واجهات برمجة تطبيقات Dapr المتوفرة بشكل عام (واجهات برمجة تطبيقات كتلة الإنشاء وواجهات برمجة التطبيقات التشغيلية). تتم إدارة واجهات برمجة التطبيقات هذه ودعمها بالكامل للاستخدام في بيئات الإنتاج.

لمعرفة المزيد حول استخدام واجهات برمجة التطبيقات والميزات الخاصة ب Alpha Dapr، راجع الأسئلة الشائعة عن Dapr.

رسم تخطيطي يظهر واجهات برمجة تطبيقات Dapr.

واجهات برمجة تطبيقات كتلة الإنشاء

واجهة برمجة تطبيقات كتلة الإنشاء ‏الحالة ‏‏الوصف
استدعاء الخدمة إلى الخدمة التوفر العام اكتشف الخدمات وقم بإجراء مكالمات موثوقة ومباشرة من خدمة إلى خدمة باستخدام مصادقة mTLS التلقائية والتشفير. انظر القيود المعروفة لاستدعاء خدمة Dapr في Azure Container Apps.
إدارة الحالة التوفر العام يوفر قدرات إدارة الحالة للمعاملات وعمليات CRUD.
النشر/الاشتراك التوفر العام يسمح لتطبيقات حاوية الناشر والمشترك بالتداخل عبر وسيط رسائل وسيط. يمكنك أيضا إنشاء اشتراكات تعريفية لموضوع باستخدام ملف JSON لمكون خارجي. تعرف أكثر على واجهة برمجة التطبيقات الإعلانية للنشر/الترجمة.
الارتباطات التوفر العام قم بتفعيل طلباتك بناء على الأحداث.
الجهات الفاعله التوفر العام الجهات الفاعلة في Dapr هي وحدات عمل مستندة إلى الرسائل ومترابطة واحدة ومصممة لتوسيع نطاقها بسرعة. على سبيل المثال، في حالات حمل العمل الثقيلة.
اسرار التوفر العام الوصول إلى البيانات السرية من التعليمات البرمجية للتطبيق الخاص بك أو الرجوع إلى القيم الآمنة في مكونات Dapr.
التكوين التوفر العام استرداد عناصر تكوين التطبيق والاشتراك فيها لمخازن التكوين المدعومة.

واجهات برمجة التطبيقات التشغيلية

واجهة برمجة التطبيقات التشغيلية ‏الحالة ‏‏الوصف
سلامة التوفر العام فحوصات فحص السلامة التي تراقب الجاهزية أو فعالية Dapr واستعداد تهيئة SDKs. واجهة برمجة التطبيقات الصحية متاحة فقط ل HTTP.
يتم تكوين فحوصات صحة العربة الجانبية تلقائيا عند تفعيل Dapr في تطبيق الحاويات الخاص بك.
بيانات التعريف التوفر العام إرجاع معلومات حول sidecar، مما يسمح باكتشاف وقت التشغيل.

مجموعات SDK المتوافقة

تتوافق أحدث حزم SDK للعميل من Dapr مع Azure Container Apps. يمكنك استخدام مجموعات تطوير البرمجيات Dapr مع أي من واجهات برمجة التطبيقات المدعومة ل DAPR v1.12.

إشعار

حاليا، لا تتوافق امتدادات خوادم Dapr، وحزم الممثلين، وحزم SDK لسير العمل مع تطبيقات حاويات Azure. لمعرفة المزيد عن جميع حزم Dapr SDK، راجع SDKs.

مكون وقت تشغيل التطبيقات الموزّعة

مكونات المستوى 1 مقابل مكونات المستوى 2

يتم دعم مجموعة فرعية من مكونات Dapr. ضمن تلك المجموعة الفرعية، يتم تقسيم مكونات Dapr إلى فئتي دعم: المستوى 1 أو المستوى 2.

  • مكونات المستوى 1: المكونات الثابتة التي تتلقى تحقيقا فوريا في السيناريوهات الحرجة (الأمان أو الانحدار الخطير). وإلا، تتعاون Microsoft مع مصدر مفتوح لمعالجة في إصلاح عاجل أو الإصدار العادي التالي.
  • مكونات المستوى 2: المكونات التي يتم التحقيق فيها بأولوية أقل، لأنها ليست في حالة مستقرة أو مع موفر جهة خارجية.
مكونات المستوى 1
واجهة برمجة التطبيقات (API) المكون نوع
إدارة الحالة Azure Cosmos DB
Azure Blob Storage v1
مساحة تخزين Azure Table‬
Microsoft SQL Server
state.azure.cosmosdb
state.azure.blobstorage
state.azure.tablestorage
state.sqlserver
النشر والاشتراك قوائم انتظار ناقل خدمة Azure
مواضيع ناقل خدمة Azure
مراكز أحداث Azure
pubsub.azure.servicebus.queues
pubsub.azure.servicebus.topics
pubsub.azure.eventhubs
الربط قوائم انتظار تخزين Azure
قوائم انتظار ناقل خدمة Azure
مساحة تخزين Azure Blob
مراكز أحداث Azure
bindings.azure.storagequeues
bindings.azure.servicebusqueues
bindings.azure.blobstorage
bindings.azure.eventhubs
إدارة البيانات السرية Azure Key Vault secretstores.azure.keyvault
مكونات المستوى 2
واجهة برمجة التطبيقات (API) المكون نوع
إدارة الحالة PostgreSQL
MySQL وMariaDB
ريديس
state.postgresql
state.mysql
state.redis
النشر والاشتراك Apache Kafka
عمليات دفق Redis
pubsub.kafka
pubsub.redis
الربط شبكة أحداث Azure
Azure Cosmos DB
Apache Kafka
PostgreSQL
ريديس
كرون
bindings.azure.eventgrid
bindings.azure.cosmosdb
bindings.kafka
bindings.postgresql
bindings.redis
bindings.cron
التكوين PostgreSQL
ريديس
configuration.postgresql
configuration.redis

للمزيد من المعلومات حول استخدام مكونات Dapr المدعومة، راجع مكونات Dapr في Azure Container Apps.

الأدوات

تضمن Azure Container Apps التوافق مع أدوات Dapr مفتوحة المصدر، مثل SDKs وCLI.

القيود

  • مواصفات تكوين Dapr: أي قدرات تتطلب استخدام مواصفات تكوين Dapr.
  • أي تعليقات جانبية ل Dapr غير مدرجة في دليل تمكين Dapr.
  • تدعم واجهات برمجة التطبيقات والمكونات: فقط واجهات برمجة التطبيقات والمكونات التي تم تصنيفها ك GA أو Tier 1 أو Tier 2 مدعومة في تطبيقات حاويات Azure.
  • تذكيرات الممثلين: طلب minReplicas بقيمة 1+ لضمان أن التذكيرات نشطة دائما وتطلق بشكل صحيح.
  • الوظائف: Dapr غير مدعوم للوظائف.