مشاركة عبر


استخدام دالة كمعالج حدث لأحداث "خطوط شبكة الأحداث"

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

لاستخدام دالة في Azure كمعالج للأحداث، اتبع إحدى هذه الطرق:

  • استخدام مشغل خطوط شبكة الأحداث. حدد Azure Functionكنوع نقطة نهاية. ثم حدد تطبيق الدالة والدالة التي ستعالج الأحداث.
  • استخدم مشغل HTTP. حدد خطاف الويبلنوع نقطة النهاية. ثم حدد URL للدالة التي ستعالج الأحداث.

نوصي باستخدام الأسلوب الأول (مشغل خطوط شبكة الأحداث) إذ إن له المزايا التالية عبر الأسلوب الثاني:

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

إشعار

  • عند استخدام مشغل Event Grid لإضافة اشتراك حدث باستخدام دالة Azure، تجلب Event Grid مفتاح الوصول للدالة الهدف باستخدام بيانات اعتماد كيان خدمة Event Grid. يتم منح الأذونات إلى Event Grid عند تسجيل موفر مورد Event Grid في اشتراك Azure الخاص بهم.
  • إذا قمت بحماية دالة Azure الخاصة بك باستخدام تطبيق معرف Microsoft Entra، يتعين عليك اتباع نهج خطاف الويب العام باستخدام مشغل HTTP. استخدم نقطة نهاية دالة Azure كعنوان URL لإخطار على الويب عند إضافة الاشتراك.

البرامج التعليمية

المسمى الوظيفي ‏‏الوصف
التشغيل السريع: التعامل مع الأحداث باستخدام الدالة إرسال حدث مخصص إلى دالة للمعالجة.
البرنامج التعليمي: دفق البيانات الضخمة في مستودع البيانات عندما يقوم مركز الأحداث بإنشاء ملف التقاط، ترسل Event Grid حدثا إلى تطبيق دالة. يقوم التطبيق باسترداد ملف الالتقاط وترحيل البيانات إلى مستودع البيانات.
البرنامج التعليمي: أمثلة على تكامل ناقل خدمة Microsoft Azure إلى خطوط شبكة الأحداث Microsoft Azure ترسل "خطوط شبكة الأحداث" رسائل من موضوع ناقل خدمة Azure إلى تطبيق دالة وتطبيق منطقي.

مثال REST (لـ PUT)

{
	"properties": 
	{
		"destination": 
		{
			"endpointType": "AzureFunction",
			"properties": 
			{
				"resourceId": "/subscriptions/<AZURE SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP NAME>/providers/Microsoft.Web/sites/<FUNCTION APP NAME>/functions/<FUNCTION NAME>",
				"maxEventsPerBatch": 10,
				"preferredBatchSizeInKilobytes": 64
			}
		},
		"eventDeliverySchema": "EventGridSchema"
	}
}

تمكين الدفعات

للحصول على معدل نقل أعلى، قم بتمكين الدفعات على الاشتراك. إذا كنت تستخدم مدخل Microsoft Azure، يمكنك تعيين الحد الأقصى للأحداث لكل دفعة وحجم الدفعة المفضل بالكيلو بايت في وقت إنشاء اشتراك أو بعد الإنشاء.

يمكنك تكوين إعدادات الدفعات باستخدام مدخل Microsoft Azure أو PowerShell أو CLI أو قالبResource Manager.

مدخل Azure

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

تمكين الدفعات في وقت إنشاء الاشتراك

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

تمكين الدفعات بعد الإنشاء

قالب Azure Resource Manager

يمكنك تعيين maxEventsPerBatch وPreferredBatchSizeInKilobytes في قالب Azure Resource Manager. لمعرفة مزيد من المعلومات، راجع مرجع قالب Microsoft.EventGrid eventSubscriptions.

Azure CLI

يمكنك استخدام az eventgrid event-subscription create الأمر لتكوين الإعدادات المتعلقة بالدفعة باستخدام المعلمات التالية: --max-events-per-batch أو --preferred-batch-size-in-kilobytes.

Azure PowerShell

يمكنك استخدام New-AzEventGridSubscription أو Update-AzEventGridSubscription cmdlet لتكوين الإعدادات المتعلقة بالدفعات باستخدام المعلمات التالية: -MaxEventsPerBatch أو -PreferredBatchSizeInKiloBytes.

إشعار

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

راجع مقالة معالجات الأحداث للحصول على قائمة بمعالجات الأحداث المدعومة.