قائمة انتظار التخزين كمعالج حدث لأحداث Azure Event Grid

معالج الحدث هو المكان الذي يتم إرسال الحدث فيه. يتخذ المعالج بعض الإجراءات الإضافية لمعالجة الحدث. يتم تكوين العديد من خدمات Azure تلقائياً للتعامل مع الأحداث ويُعدّ تخزين Azure Queue أحدها.

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

ملاحظة

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

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

راجع البرنامج التعليمي التالي للحصول على مثال لاستخدام تخزين قائمة الانتظار كمعالج حدث.

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

الأمثلة على REST (لـ PUT)

قائمة انتظار التخزين كمعالج الحدث

{
	"properties": 
	{
		"destination": 
		{
			"endpointType": "StorageQueue",
			"properties": 
			{
				"resourceId": "/subscriptions/<AZURE SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP NAME>/providers/Microsoft.Storage/storageAccounts/<STORAGE ACCOUNT NAME>",
				"queueName": "<QUEUE NAME>"
			}
		},
		"eventDeliverySchema": "EventGridSchema"
	}
}

قائمة انتظار التخزين كمعالج الحدث - التسليم مع الهوية المدارة

{
	"properties": 
	{
		"deliveryWithResourceIdentity": 
		{
			"identity": 
			{
				"type": "SystemAssigned"
			},
			"destination": 
			{
				"endpointType": "StorageQueue",
				"properties": 
				{
					"resourceId": "/subscriptions/<AZURE SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP NAME>/providers/Microsoft.Storage/storageAccounts/<STORAGE ACCOUNT NAME>",
					"queueName": "<QUEUE NAME>"
				}
			}
		},
		"eventDeliverySchema": "EventGridSchema"
	}
}

قائمة انتظار التخزين كمعالج الحدث مع وجهة deadletter

{
	"name": "",
	"properties": 
	{
		"destination": 
		{
			"endpointType": "StorageQueue",
			"properties": 
			{
				"resourceId": "/subscriptions/<AZURE SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP NAME>/providers/Microsoft.Storage/storageAccounts/<DESTINATION STORAGE>",
				"queueName": "queue1"
			}
		},
		"eventDeliverySchema": "EventGridSchema",
		"deadLetterDestination": 
		{
			"endpointType": "StorageBlob",
			"properties": 
			{
				"resourceId": "/subscriptions/<AZURE SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP NAME>/providers/Microsoft.Storage/storageAccounts/<DEADLETTER STORAGE>",
				"blobContainerName": "test"
			}
		}
	}
}

قائمة انتظار التخزين كمعالج الحدث مع وجهة deadletter - هوية مدارة

{
	"properties": 
	{
		"destination": 
		{
			"endpointType": "StorageQueue",
			"properties": 
			{
				"resourceId": "/subscriptions/<AZURE SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP NAME>/providers/Microsoft.Storage/storageAccounts/<DESTINATION STORAGE>",
				"queueName": "queue1"
			}
		},
		"eventDeliverySchema": "EventGridSchema",
		"deadLetterWithResourceIdentity": 
		{
			"identity": 
			{
				"type": "SystemAssigned"
			},
			"deadLetterDestination": 
			{
				"endpointType": "StorageBlob",
				"properties": 
				{
					"resourceId": "/subscriptions/<AZURE SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP NAME>/providers/Microsoft.Storage/storageAccounts/<DEADLETTER STORAGE>",
					"blobContainerName": "test"
				}
			}
		}
	}
}

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

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