تكامل 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.
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.
واجهة برمجة التطبيقات (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 غير مدعوم للوظائف.