البرنامج التعليمي: إنشاء تطبيق إعلام بلا خادم باستخدام Azure Functions وخدمة Azure Web PubSub
مقالة
تساعدك خدمة Azure Web PubSub على إنشاء تطبيقات ويب للمراسلة في الوقت الحقيقي باستخدام WebSockets. Azure Functions هو نظام أساسي بلا خادم يتيح لك تشغيل التعليمات البرمجية دون إدارة أي بنية أساسية. في هذا البرنامج التعليمي، ستتعلم كيفية استخدام خدمة Azure Web PubSub وAzure Functions لإنشاء تطبيق بلا خادم مع مراسلة في الوقت الفعلي ضمن سيناريوهات الإعلام.
سيقوم التطبيق بالاتصال بمثيل خدمة Web PubSub في Azure.
حدد الزر جديد «New» الموجود في الزاوية العلوية اليسرى من مدخل Microsoft Azure. في الشاشة «New»، اكتب «Web PubSub» في مربع البحث واضغط على إدخال. (يمكنك أيضًا البحث في Azure Web PubSub من الفئة Web.)
حدد «Web PubSub» من نتائج البحث، ثم حدد «Create».
أدخل الإعدادات التالية.
الإعدادات
القيمة المقترحة
الوصف
اسم المورد
اسم فريد عالميًا
الاسم الفريد العام الذي يعرّف مثيل خدمة Web PubSub الجديد. الأحرف الصالحة هي a-zو A-Z0-9و و.-
الاشتراك
اشتراكك
اشتراك Azure الذي يتم بموجبه إنشاء مثيل خدمة Web PubSub الجديد هذا.
يحدد عدد الوحدات عدد الاتصالات التي يمكن لمثيل خدمة PubSub على الويب قبولها. تدعم كل وحدة 1000 اتصال متزامن على الأكثر. لا يمكن تكوينه إلا في المستوى القياسي.
حدد «Create» لبدء نشر مثيل خدمة Web PubSub.
إنشاء وتشغيل الدوال محلياً
تأكد من تثبيت Azure Functions Core Tools. الآن، قم بإنشاء دليل فارغ للمشروع. قم بتشغيل الأمر ضمن دليل العمل هذا. استخدم أحد الخيارات المحددة أدناه.
قم بتأكيد extensionBundle أو تحديثه host.jsonإلى الإصدار 4.* أو إصدار أحدث للحصول على دعم Web PubSub. لتحديث host.json، افتح الملف في المحرر، ثم استبدل extensionBundle الإصدار الموجود بالإصدار 4.* أو أحدث.
قم بتأكيد extensionBundle أو تحديثه host.jsonإلى الإصدار 3.3.0 أو أحدث للحصول على دعم Web PubSub. لتحديث host.json، افتح الملف في المحرر، ثم استبدل extensionBundle الإصدار الموجود بالإصدار 3.3.0 أو أحدث.
تحديث host.jsonextensionBundle إلى الإصدار 3.3.0 أو أحدث للحصول على دعم Web PubSub. لتحديث host.json، افتح الملف في المحرر، ثم استبدل extensionBundle الإصدار الموجود بالإصدار 3.3.0 أو أحدث.
يعتمد TimerTrigger المستخدم في العينة على Azure Storage، ولكن يمكنك استخدام محاكي التخزين المحلي عندما تكون الدالة قيد التشغيل محليًا. إذا تلقيت بعض الأخطاء مثل There was an error performing a read operation on the Blob Storage Secret Repository. Please ensure the 'AzureWebJobsStorage' connection string is valid.، فستحتاج إلى تنزيل محاكي التخزين وتمكينه.
الآن أنت قادر على تشغيل الدالة المحلية الخاصة بك حسب الأمر.
func start --port 7071
وللتحقق من سجلات التشغيل، يمكنك زيارة الصفحة الثابتة للمضيف المحلي من خلال زيارة: http://localhost:7071/api/index.
إشعار
بعض عابسات إعادة توجيه تلقائيا إلى https أن يؤدي إلى عنوان URL خاطئ. اقترح استخدام Edge وتحقق مرة وافحص عنوان url إذا لم يكن العرض ناجحا.
توزيع Function App إلى Azure
قبل أن تتمكن من نشر رمز دالتك على Azure، تحتاج إلى إنشاء ثلاثة موارد:
مجموعة الموارد عبارة عن حاوية منطقية للموارد.
حساب تخزين، وهو يستخدم للاحتفاظ بالحالة والمعلومات الأخرى بشأن الدوال لديك.
تطبيق الوظيفة، الذي يوفر البيئة لتنفيذ التعليمة البرمجية للوظيفة. يتيح تطبيق الدالة التعيين إلى مشروع الدالة المحلي وتجميع الدوال كوحدة منطقية لتيسير إدارة الموارد وتوزيعها ومشاركتها.
استخدم الأوامر التالية لإنشاء هذه العناصر.
تسجيل الدخول إلى Azure:
az login
إنشاء مجموعة موارد أو يمكنك التخطي عن طريق إعادة استخدام إحدى خدمات Azure Web PubSub:
az group create -n WebPubSubFunction -l <REGION>
إنشاء حساب تخزين للأغراض العامة في مجموعة الموارد والمنطقة الخاصة بك:
az storage account create -n <STORAGE_NAME> -l <REGION> -g WebPubSubFunction
نحن هنا ننشر الإعدادات المحلية local.settings.json مع معلمة الأمر--publish-local-settings. إذا كنت تستخدم Microsoft Azure Storage Emulator، يمكنك كتابة no لتخطي الكتابة فوق هذه القيمة على Azure باتباع رسالة المطالبة:App setting AzureWebJobsStorage is different between azure and local.settings.json, Would you like to overwrite value in azure? [yes/no/show]. بالإضافة إلى ذلك، يمكنك تحديث إعدادات Function App في مدخل Microsoft Azure ->الإعدادات ->Configuration.
يمكنك الآن التحقق من موقعك من تطبيق Azure Function عن طريق الانتقال إلى عنوان URL: https://<FUNCIONAPP_NAME>.azurewebsites.net/api/index.
تنظيف الموارد
إذا كنت لن تستمر في استخدام هذا التطبيق، فاحذف جميع الموارد التي تم إنشاؤها بواسطة هذا المستند من خلال الخطوات التالية حتى لا تتحمل أي رسوم:
من القائمة اليسرى في مدخل Azure، حدد مجموعات الموارد ثم حدد مجموعة الموارد التي أنشأتها. استخدم مربع البحث للعثور على مجموعة الموارد باسمها بدلا من ذلك.
في النافذة التي تفتح، حدد resourceGroup، ثم حدد Delete resource group.
في النافذة الجديدة، اكتب اسم resourceGroup المراد حذفها، ثم حدد Delete.
الخطوات التالية
في هذا التشغيل السريع، تعلمت كيفية تشغيل تطبيق دردشة بلا خادم. الآن، يمكنك البدء في إنشاء تطبيقك.