تكامل Dapr مع Azure Container Apps

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

Dapr في Azure Container Apps

قم بتكوين Dapr لبيئة تطبيقات الحاوية الخاصة بك باستخدام تطبيق حاوية يدعم Dapr، ومكون Dapr تم تكوينه للحل الخاص بك، و Dapr sidecar يستدعي الاتصال بينهما. يوضح الرسم التخطيطي التالي هذه المفاهيم الأساسية المتعلقة ب Dapr في Azure Container Apps.

رسم تخطيطي يوضح Dapr pub/sub وكيفية عمله في Container Apps.

Label إعدادات 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 ألفا والميزات، راجع الأسئلة المتداولة حول Dapr.

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

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

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

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

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

الأدوات

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

القيود

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

الخطوات التالية