روابط شبكة الأحداث Azure لوظائف Azure

يوضح هذا المرجع كيفية الاتصال بشبكة أحداث Azure باستخدام مشغلات وروابط دالات Azure.

شبكة الأحداث هي خدمة Azure ترسل طلبات HTTP لإعلامك بالأحداث التي تحدث في الناشرين. الناشر هو الخدمة أو المورد الذي ينشئ الحدث. على سبيل المثال، حساب تخزين النقطة Azure ناشر، وتحميل blob أو حذف حدث. بعض خدمات Azure لديها دعم مدمج لنشر الأحداث إلى شبكة الأحداث.

معالجات الأحداث يتلقى الأحداث ويعالجها. وظائف Azure هي واحدة من العديد من خدمات Azure التي لديها دعم مضمن لمعالجة أحداث شبكة الأحداث. توفر Functions مشغل شبكة الأحداث الذي يستدعي دالة عند تلقي حدث من شبكة الأحداث. يمكن استخدام ربط إخراج مشابه لإرسال الأحداث من الدالة الخاصة بك إلى موضوع مخصص لشبكة الأحداث.

يمكنك أيضاً استخدام مشغل HTTP لمعالجة أحداث شبكة الأحداث. لمعرفة المزيد، راجع تلقي الأحداث إلى نقطة نهاية HTTP. نوصي باستخدام مشغل شبكة الأحداث عبر مشغل HTTP.

الإجراء نوع
تشغيل دالة عند إرسال حدث شبكة أحداث المشغِّل
إرسال حدث شبكة أحداث ربط الإخراج
التحكم في رمز حالة HTTP الذي تم إرجاعه نقطة نهاية HTTP

تثبيت الملحق

تعتمد حزمة NuGet الملحق التي تقوم بتثبيتها على وضع C# الذي تستخدمه في تطبيق الوظائف:

يتم تنفيذ الوظائف في عملية عامل C# معزولة. لمعرفة المزيد، راجع دليل تشغيل وظائف C# Azure في عملية عامل معزولة.

تختلف وظيفة الملحق باختلاف إصدار الملحق:

أضف الملحق إلى مشروعك عن طريق تثبيت حزمة NuGet، الإصدار 3.x.

تثبيت الحزمة

يعد ملحق شبكة الأحداث جزءاً من مجموعة الملحقات المحددة في ملف مشروع host.json الخاص بك. قد تحتاج إلى تعديل هذه المجموعة لتغيير إصدار ربط شبكة الأحداث، أو إذا لم تكن المجموعات مثبتة بالفعل. لمعرفة المزيد، راجع حزمة الإضافات.

يمكنك إضافة هذا الإصدار من الملحق من مجموعة الملحقات v3 عن طريق إضافة أو استبدال الشكل التالي في ملفك host.json:

{
    "version": "2.0",
    "extensionBundle": {
        "id": "Microsoft.Azure.Functions.ExtensionBundle",
        "version": "[3.3.0, 4.0.0)"
    }
}

لمعرفة المزيد، راجع تحديث الإضافات.

أنواع الربط

تعتمد أنواع الربط المعتمدة ل .NET على كل من إصدار الملحق ووضع تنفيذ C#، والتي يمكن أن تكون واحدة مما يلي:

تعمل مكتبة فئة معالجة عامل معزولة تعمل دالة C# المحولة برمجيا في عملية معزولة عن وقت التشغيل.

اختر إصدارا للاطلاع على تفاصيل نوع الربط للوضع والإصدار.

تدعم عملية العامل المعزولة أنواع المعلمات وفقا للجداول أدناه. دعم الربط ب Streamو للأنوع من Azure.Messaging قيد المعاينة .

مشغل Event Grid

عندما تريد أن تعالج الدالة حدثا واحدا، يمكن ربط مشغل Event Grid بالأنواع التالية:

النوع ‏‏الوصف
‏‏أنواع قابلة للتسلسل إلى JSON تحاول الدالات إلغاء تسلسل بيانات JSON للحدث إلى نوع كائن CLR قديم عادي (POCO).
string الحدث كسلسلة.
BinaryData1 وحدات البايت لرسالة الحدث.
CloudEvent1 كائن الحدث. استخدم عند تكوين Event Grid للتسليم باستخدام مخطط CloudEvents.
EventGridEvent1 كائن الحدث. استخدم عند تكوين Event Grid للتسليم باستخدام مخطط Event Grid.

عندما تريد أن تعالج الدالة دفعة من الأحداث، يمكن ربط مشغل Event Grid بالأنواع التالية:

النوع ‏‏الوصف
CloudEvent[]1،
EventGridEvent[]1،
string[],
BinaryData[]1
صفيف من الأحداث من الدفعة. يمثل كل إدخال حدثا واحدا.

1 لاستخدام هذه الأنواع، تحتاج إلى الرجوع إلى Microsoft.Azure.Functions.Worker.Extensions.EventGrid 3.3.0 أو أحدث والتبعيات الشائعة لروابط نوع SDK.

ربط بيانات مخرجات شبكة الأحداث

عندما تريد أن تكتب الدالة حدثا واحدا، يمكن ربط إخراج شبكة الأحداث بالأنواع التالية:

النوع ‏‏الوصف
string الحدث كسلسلة.
byte[] وحدات البايت لرسالة الحدث.
‏‏أنواع قابلة للتسلسل إلى JSON كائن يمثل حدث JSON. تحاول الدالات تسلسل نوع كائن CLR (POCO) قديم عادي في بيانات JSON.

عندما تريد أن تكتب الدالة أحداثا متعددة، يمكن ربط إخراج شبكة الأحداث بالأنواع التالية:

النوع ‏‏الوصف
T[] حيث T هو أحد أنواع الأحداث الفردية صفيف يحتوي على أحداث متعددة. يمثل كل إدخال حدثا واحدا.

بالنسبة لسيناريوهات الإخراج الأخرى، قم بإنشاء واستخدام أنواع من Azure.Messaging.EventGrid مباشرة.

إعدادات host.json

يستخدم مشغل Event Grid طلب HTTP للإخطار على الويب، والذي يمكن تكوينه باستخدام نفس إعدادات host.json مثل مشغل HTTP.

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