استخدام Azure Event Grid لإرسال أحداث تخزين Blob إلى نقطة نهاية الويب (مدخل Azure)
شبكة الأحداث هي خدمة مدارة بالكامل تمكنك من إدارة الأحداث بسهولة عبر العديد من خدمات وتطبيقات Azure المختلفة. إنها تبسط بناء التطبيقات المستندة إلى الحدث وبلا خادم. للحصول على نظرة عامة عن الخدمة، راجع نظرة عامة على Event Grid.
في هذه المقالة، يمكنك استخدام مدخل Azure للقيام بالمهام التالية:
- إنشاء حساب تخزين بيانات Blob.
- الاشتراك في الأحداث لتخزين blob.
- تشغيل حدث عن طريق تحميل ملف إلى تخزين blob.
- عرض النتيجة في تطبيق ويب معالج. وعادةً، ما ترسل الأحداث إلى نقطة نهاية تعالج بيانات الحدث وتتخذ الإجراءات. لتبسيط الأمر، يمكنك إرسال الأحداث إلى تطبيق ويب يجمع الرسائل ويعرضها.
إذا لم يكن لديك اشتراك في Azure، فأنشئ حساب Azure مجاني قبل أن تبدأ.
عند الانتهاء، ترى أن بيانات الحدث قد أُرسِلت إلى تطبيق الويب.
إنشاء حساب تخزين
تسجيل الدخول إلى مدخل Azure.
لإنشاء تخزين Blob، حدد Create a resource.
في Search، أدخل Storage account، وحدد Storage account من قائمة النتائج.
في الصفحة Storage account حدد Create لبدء إنشاء حساب التخزين. للاشتراك في الأحداث، بادر بإنشاء حساب تخزين V2 للأغراض العامة أو حساب تخزين Blob.
في الصفحة Create storage account، بادر باتخاذ الخطوات التالية:
حدد اشتراك Azure الخاص بك.
بالنسبة لمجموعة الموارد، أنشئ مجموعة موارد جديدة أو مجموعة موجودة.
أدخل اسماً مميزاً لحساب التخزين خاصتك.
حدد Region التي تريد إنشاء حساب التخزين فيها.
بالنسبة لخيار Redundancy، حدد Locally-redundant storage (LRS) من القائمة المنسدلة.
حدد Review في أسفل الصفحة.
في صفحة Review، راجع الإعدادات، وحدد Create.
إشعار
حسابات التخزين فقط من نوع StorageV2 (الأغراض العامة v2) و BlobStorage تدعم دمج الحدث. التخزين (v1 للأغراض العامة)لا يدعم التكامل مع شبكة الأحداث.
يستغرق النشر بضع دقائق لإكماله. في صفحة Deployment ، حدد Go to resource.
في الصفحة Storage account، حدد Eventsفي القائمة اليسرى.
احتفظ بهذه الصفحة في مستعرض الويب مفتوحا.
قم بإنشاء نقطة نهاية للرسالة
قبل الاشتراك في أحداث تخزين Blob، دعنا ننشئ نقطة نهاية لرسالة الحدث. عادةً ما تتخذ نقطة النهاية إجراءات بناءً على بيانات الحدث. لتبسيط هذا التشغيل السريع، يمكنك نشر تطبيق ويب تم إنشاؤه مسبقا يعرض رسائل الحدث. يتضمن الحل المنشور خطة خدمة التطبيقات، وتطبيق الويب الخاص بخدمة التطبيقات، وكود المصدر من GitHub.
حدد Deploy to Azure لنشر الحل في اشتراكك.
في الصفحة Custom deployment، بادر باتخاذ الخطوات التالية:
بالنسبة إلى مجموعة الموارد، حدد مجموعة الموارد التي أنشأتها عند إنشاء حساب التخزين. سيكون من الأسهل عليك التنظيف بعد الانتهاء من البرنامج التعليمي عن طريق حذف مجموعة الموارد.
بالنسبة إلى اسم الموقع، أدخل اسماً لتطبيق الويب.
بالنسبة إلى اسم خطة الاستضافة، أدخل اسماً لخطة خدمة التطبيقات لاستخدامها لاستضافة تطبيق الويب.
حدد "Review + create".
في صفحة مراجعة+ إنشاء حدد إنشاء.
يستغرق النشر بضع دقائق لإكماله. في صفحة Deployment ، حدد Go to resource group.
في الصفحة Resource group، في قائمة الموارد، حدد تطبيق الويب الذي أنشأته. كما ترى أيضاً خطة App Service وحساب التخزين في هذه القائمة.
في الصفحة App Service لتطبيق الويب الخاص بك، حدد عنوان URL للانتقال إلى موقع الويب. يجب أن يكون عنوان URL بهذا الشكل:
https://<your-site-name>.azurewebsites.net
.تأكد من رؤية الموقع مع عدم نشر أي أحداث عليه حتى الآن.
هام
احتفظ بنافذة Azure Event Grid Viewer مفتوحة حتى تتمكن من رؤية الأحداث عند نشرها.
تسجيل موفر موارد شبكة الأحداث
ما لم تكن قد استخدمت Event Grid من قبل، فستحتاج إلى تسجيل مزود موارد Event Grid. إذا كنت قد استخدمت Event Grid من قبل، فانتقل إلى القسم التالي.
في مدخل Microsoft Azure، قم بالخطوات التالية:
في القائمة اليسرى، حدد Subscriptions.
حدد subscription الذي تريد استخدامه لـ Event Grid من قائمة الاشتراك.
في صفحة Subscription، حدد Resource providers ضمن Settings في القائمة اليسرى.
ابحث عن Microsoft.EventGrid، وتأكد من أن الحالة غير مسجلة.
حدد Microsoft.EventGrid في قائمة الموفرين.
حدد Register في شريط الأوامر.
قم بالتحديث للتأكد من تغيير حالة Microsoft.EventGrid إلى Registered.
الاشتراك في تخزين Blob
تشترك في موضوع لإخبار Event Grid بالأحداث التي تريد تعقبها، ومكان إرسال هذه الأحداث.
إذا قمت بإغلاق صفحة حساب التخزين، فانتقل إلى حساب Azure Storage الذي قمت بإنشائه سابقا. في القائمة اليسرى، حدد All resources وحدد حساب التخزين خاصتك.
في الصفحة Storage account، حدد Eventsفي القائمة اليسرى.
حدد More Options، و Web Hook. أنت ترسل الأحداث إلى تطبيق العارض باستخدام خطاف ويب لنقطة النهاية.
في صفحة إنشاء اشتراك حدث، قم بتنفيذ الخطوات التالية:
أدخل اسماً للاشتراك في الحدث.
أدخل اسماً لـ موضوع النظام. للتعرف على موضوعات النظام، راجع نظرة عامة على موضوعات النظام.
حدد Web Hook لـ Endpoint type.
بالنسبة لنقطة النهاية، اختر تحديد نقطة نهاية، وأدخل عنوان URL لتطبيق الويب الخاص بك وأضف
api/updates
إلى عنوان URL للصفحة الرئيسية (على سبيل المثال:https://spegridsite.azurewebsites.net/api/updates
)، ثم حدد تأكيد التحديد.الآن، في صفحة Create Event Subscription، حدد Create لإنشاء اشتراك الحدث.
اعرض تطبيق الويب خاصتك مرةً أخرى، ولاحظ إرسال حدث التحقق من صحة الاشتراك إليه. حدد أيقونة العين لتوسيع بيانات الحدث. ترسل Event Grid حدث التحقق؛ بحيث تتمكن نقطة النهاية من التحقق من رغبتها في تلقي بيانات الحدث. يتضمن تطبيق الويب رمزًا للتحقق من صحة الاشتراك.
الآن، لنبادر بتشغيل حدث لمعرفة كيف توزع Event Grid الرسالة إلى نقطة النهاية لديك.
إرسال حدث إلى نقطة النهاية
تشغل حدث مخزن Blob عن طريق تحميل ملف. لا يحتاج الملف إلى أي محتوى محدد.
في مدخل Azure، انتقل إلى حساب تخزين Blob خاصتك وحدد Containers في قائمة السماح.
حدد + Container. أعط الحاوية اسمًا، واستخدم أي مستوى وصول، وحدد إنشاء.
حدد حاويتك الجديدة.
لتحميل ملف، حدد Upload. في صفحة Upload blob، استعرض وحدد ملفاً تريد تحميله للاختبار، ثم حدد Upload على تلك الصفحة.
استعرض للوصول إلى ملف الاختبار خاصتك وحمِّله.
لقد قمت بتشغيل الحدث، وأرسلت شبكة الأحداث الرسالة إلى نقطة النهاية التي قمت بتهيئتها عند الاشتراك. الرسالة بتنسيق JSON وتحتوي على صفيف ذي حدثٍ واحدٍ أو أكثر. في المثال التالي، تحتوي رسالة JSON على مصفوفة ذات حدث واحد. اعرض تطبيق الويب ولاحظ استلام حدث إنشاء blob.
تنظيف الموارد
إذا كنت تخطط لمتابعة العمل مع هذا الحدث، فلا تنظف الموارد التي جرى إنشاؤها في هذه المقالة. وإلا، فاحذف الموارد التي أنشأتها في هذه المقالة.
حدد مجموعة الموارد، ثم حدد Delete resource group.
الخطوات التالية
الآن بعد أن عرفت كيفية إنشاء مواضيع مخصصة واشتراكات الأحداث، تعرف على المزيد حول ما يمكن أن تساعدك شبكة الأحداث على القيام به: