كيفية إنشاء مستهلك ويب هوك أساسي باستخدام وظائف Azure

نيك زيمرمان

20‏/12‏/2017

البريد الإلكتروني

1 min read

كيفية إنشاء مستهلك ويب هوك أساسي باستخدام وظائف Azure

النقاط الرئيسية

    • توفر وظائف Azure طريقة سريعة وخالية من الخوادم لنشر وتوسيع المستهلكين للويب هوك دون إدارة البنية التحتية.

    • ترسل الويب هوك بيانات الحدث إلى نقطة النهاية المعرفة لديك — دمجها مع وظائف Azure يمكّن الأتمتة عبر منصات مثل Slack و Facebook و Salesforce.

    • باستخدام Visual Studio أو Azure Console، يمكنك بسهولة بناء وتصحيح ونشر مستهلكي الويب هوك.

    • لتجنب أوقات الانتظار المكلفة، قم بمعالجة بيانات الويب هوك بشكل غير متزامن — قم بتخزين ومعالجة الأحمال الكبيرة أو المتغيرة خارج الوظيفة الرئيسية.

    • يمكن أن تمد خدمات حاويات Azure (AKS) الوظائف لمهام طويلة الأمد مع الحفاظ على الوظيفة خفيفة الوزن.

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

أهم النقاط في الأسئلة والأجوبة

  • ما هي الويب هوكس ولماذا هي مفيدة؟

    الويب هوك هي رسائل مؤتمتة ترسلها خدمات مثل Slack أو PayPal إلى نقطة النهاية التي تختارها عند حدوث أحداث معينة. إنها تمكن من التكامل في الوقت الحقيقي وسير العمل القائم على الأحداث.

  • لماذا تستخدم Azure Functions لاستهلاك الويب هوك؟

    توفر Azure Functions نموذج بدون خادم - لا تحتاج إلى إدارة الخوادم، توسيع أوتوماتيكي، وتكاليف دفع لكل تنفيذ - مما يجعلها مثالية لحركة مرور webhook غير المتوقعة.

  • كيف أبني مستهلك ويب هوك أساسي في أزور؟

    يمكنك إنشاء دالة Azure من خلال Visual Studio أو وحدة Azure، إضافة مشروع دالة Azure جديد، اختبار محلياً، ثم نشره مباشرة على Azure.

  • ما هي أكبر عثرة عند العمل مع الويب هوكس؟

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

  • كيف يمكنني التعامل مع أحداث الويب المعقدة أو التي تستغرق وقتًا طويلاً؟

    استخدم خدمات حاويات Azure (AKS) أو أدوات مماثلة للمعالجة الممتدة. يجب أن تقوم الوظيفة بتفعيل هذه الحاويات والعودة فورًا لتجنب حدوث أوقات الانتظار.

  • ما هي الميزة الرئيسية لدمج وظائف بدون خادم والويب هوكس؟

    ستحصل على إعداد منخفض الصيانة وعالي المرونة لبناء أنظمة تلقائية عبر خدمات متعددة—بدون وسطاء تقليديين أو أعباء تكامل ثقيلة.

في نوفمبر، قمت بإعطاء حديث في Live! 360 حول كيفية إنشاء مستهلك webhook أساسي باستخدام Azure Functions. ستقوم هذه التدوينة بإعادة تلخيص ذلك الحديث وتبسيط الأمور حتى تفهم أساسيات Azure Functions،

في نوفمبر، قمت بإعطاء حديث في Live! 360 حول كيفية إنشاء مستهلك webhook أساسي باستخدام Azure Functions. ستقوم هذه التدوينة بإعادة تلخيص ذلك الحديث وتبسيط الأمور حتى تفهم أساسيات Azure Functions،

في نوفمبر، قمت بإعطاء حديث في Live! 360 حول كيفية إنشاء مستهلك webhook أساسي باستخدام Azure Functions. ستقوم هذه التدوينة بإعادة تلخيص ذلك الحديث وتبسيط الأمور حتى تفهم أساسيات Azure Functions،

المخاطر المحتملة

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

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

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

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

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

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

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

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

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

واجهة ويب للدالة على Azure

في نوفمبر، قدمت حديثًا في Live! 360 حول كيفية إنشاء مستهلك ويب هوك أساسي باستخدام وظائف Azure. ستستعرض هذه التدوينة تلك المحادثة وتبسط الأمور حتى تتمكن من فهم أساسيات وظيفة Azure، وتوسيع حل الإطار الموجود على Github.

في نوفمبر، قدمت حديثًا في Live! 360 حول كيفية إنشاء مستهلك ويب هوك أساسي باستخدام وظائف Azure. ستستعرض هذه التدوينة تلك المحادثة وتبسط الأمور حتى تتمكن من فهم أساسيات وظيفة Azure، وتوسيع حل الإطار الموجود على Github.

في نوفمبر، قدمت حديثًا في Live! 360 حول كيفية إنشاء مستهلك ويب هوك أساسي باستخدام وظائف Azure. ستستعرض هذه التدوينة تلك المحادثة وتبسط الأمور حتى تتمكن من فهم أساسيات وظيفة Azure، وتوسيع حل الإطار الموجود على Github.

ما هي Webhooks؟

تعتبر واجهات الويب أشياء رائعة تقدمها العديد من الخدمات الشهيرة بما في ذلك SparkPost و Slack و Visual Studio Team Services و Office 365 و Facebook و PayPal و Salesforce. تقوم واجهات الويب بإرسال البيانات بناءً على حدث إلى نقطة النهاية التي تحددها.

تعتبر واجهات الويب أشياء رائعة تقدمها العديد من الخدمات الشهيرة بما في ذلك SparkPost و Slack و Visual Studio Team Services و Office 365 و Facebook و PayPal و Salesforce. تقوم واجهات الويب بإرسال البيانات بناءً على حدث إلى نقطة النهاية التي تحددها.

تعتبر واجهات الويب أشياء رائعة تقدمها العديد من الخدمات الشهيرة بما في ذلك SparkPost و Slack و Visual Studio Team Services و Office 365 و Facebook و PayPal و Salesforce. تقوم واجهات الويب بإرسال البيانات بناءً على حدث إلى نقطة النهاية التي تحددها.

لماذا وظائف بدون خادم؟

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

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

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

التآزر!

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

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

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

أساسيات وظائف Azure

يمكن إنشاء وظائف Azure من خلال لوحة التحكم في Azure أو Visual Studio. أوصي بتجربة كلاهما حتى تتعرف على التجارب. واحدة من الميزات الرائعة حول إنشاء شيء في لوحة التحكم في Azure هي أنه يمكنك تنزيل وظيفة Azure الناتجة كملف حل Visual Studio. Visual Studio هو نفس تجربة IDE القوية التي تعرفها وتحبها.

هناك مزايا لكلتا الطريقتين. توفر لك وحدة التحكم في وظائف Azure وصولاً مباشرًا للتحكم في معلمات تشغيل الوظيفة من الموارد المتاحة إلى حدود الاستخدام الشهري للتحكم في التكلفة. يمكن تعيين جميع هذه الخيارات والتلاعب بها من خلال Visual Studio عبر ملف host.json والمتغيرات البيئية.

يمكن إنشاء وظائف Azure من خلال لوحة التحكم في Azure أو Visual Studio. أوصي بتجربة كلاهما حتى تتعرف على التجارب. واحدة من الميزات الرائعة حول إنشاء شيء في لوحة التحكم في Azure هي أنه يمكنك تنزيل وظيفة Azure الناتجة كملف حل Visual Studio. Visual Studio هو نفس تجربة IDE القوية التي تعرفها وتحبها.

هناك مزايا لكلتا الطريقتين. توفر لك وحدة التحكم في وظائف Azure وصولاً مباشرًا للتحكم في معلمات تشغيل الوظيفة من الموارد المتاحة إلى حدود الاستخدام الشهري للتحكم في التكلفة. يمكن تعيين جميع هذه الخيارات والتلاعب بها من خلال Visual Studio عبر ملف host.json والمتغيرات البيئية.

يمكن إنشاء وظائف Azure من خلال لوحة التحكم في Azure أو Visual Studio. أوصي بتجربة كلاهما حتى تتعرف على التجارب. واحدة من الميزات الرائعة حول إنشاء شيء في لوحة التحكم في Azure هي أنه يمكنك تنزيل وظيفة Azure الناتجة كملف حل Visual Studio. Visual Studio هو نفس تجربة IDE القوية التي تعرفها وتحبها.

هناك مزايا لكلتا الطريقتين. توفر لك وحدة التحكم في وظائف Azure وصولاً مباشرًا للتحكم في معلمات تشغيل الوظيفة من الموارد المتاحة إلى حدود الاستخدام الشهري للتحكم في التكلفة. يمكن تعيين جميع هذه الخيارات والتلاعب بها من خلال Visual Studio عبر ملف host.json والمتغيرات البيئية.

إنشاء مستهلك ويب هوك أساسي

الخطوة 1

قم بإنشاء حل جديد في Visual Studio، وأضف مشروعًا جديدًا إلى ذلك الحل.

Visual studio editor

الخطوة 2

انقر بزر الماوس الأيمن على عقدة المشروع، وأضف عنصرًا جديدًا. اختر وظيفة Azure.


Visual studio editor

الخطوة 3

الآن لديك مشروع Visual Studio مألوف جدًا. يجب أن يكون لديك قالب لوظيفة Azure الأساسية بلغة C#. حان الوقت لإنشاء بعض التعليمات البرمجية لاستخدام webhook الخاص بك.

Visual studio editor

الخطوة 4

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

Debugging console

الخطوة 5

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

Visual studio editor

الخطوة 1

قم بإنشاء حل جديد في Visual Studio، وأضف مشروعًا جديدًا إلى ذلك الحل.

Visual studio editor

الخطوة 2

انقر بزر الماوس الأيمن على عقدة المشروع، وأضف عنصرًا جديدًا. اختر وظيفة Azure.


Visual studio editor

الخطوة 3

الآن لديك مشروع Visual Studio مألوف جدًا. يجب أن يكون لديك قالب لوظيفة Azure الأساسية بلغة C#. حان الوقت لإنشاء بعض التعليمات البرمجية لاستخدام webhook الخاص بك.

Visual studio editor

الخطوة 4

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

Debugging console

الخطوة 5

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

Visual studio editor

الخطوة 1

قم بإنشاء حل جديد في Visual Studio، وأضف مشروعًا جديدًا إلى ذلك الحل.

Visual studio editor

الخطوة 2

انقر بزر الماوس الأيمن على عقدة المشروع، وأضف عنصرًا جديدًا. اختر وظيفة Azure.


Visual studio editor

الخطوة 3

الآن لديك مشروع Visual Studio مألوف جدًا. يجب أن يكون لديك قالب لوظيفة Azure الأساسية بلغة C#. حان الوقت لإنشاء بعض التعليمات البرمجية لاستخدام webhook الخاص بك.

Visual studio editor

الخطوة 4

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

Debugging console

الخطوة 5

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

Visual studio editor

أخبار أخرى

اقرأ المزيد من هذه الفئة

A person is standing at a desk while typing on a laptop.

المنصة الكاملة المدعومة بالذكاء الاصطناعي التي تتوسع مع أعمالك.

A person is standing at a desk while typing on a laptop.

المنصة الكاملة المدعومة بالذكاء الاصطناعي التي تتوسع مع أعمالك.

A person is standing at a desk while typing on a laptop.

المنصة الكاملة المدعومة بالذكاء الاصطناعي التي تتوسع مع أعمالك.