استضافة تطبيق Node.js على Azure Service Fabric

يساعدك هذا التشغيل السريع في توزيع تطبيق حالي (وهو Node.js في هذا المثال) إلى نظام مجموعة Service Fabric تعمل على Azure.

المتطلبات الأساسية

تأكد قبل أن تبدأ من إعداد بيئة التطوير التي تتضمن تثبيت عدة تطوير برامج "تصميم الخدمة" وVisual Studio 2019 أو 2015.

تحتاج أيضاً إلى أن يكون لديك تطبيق Node.js حالي للتوزيع. يستخدم التشغيل السريع هذا موقع ويب Node.js بسيط يمكن تنزيله من هنا. استخرج هذا الملف إلى مجلد <path-to-project>\ApplicationPackageRoot\<package-name>\Code\ الخاص بك بعد إنشاء المشروع في الخطوة التالية.

إذا لم يكن لديك اشتراك في Azure، فأنشئ حساباً مجانياً.

إنشاء الخدمة

تشغيل Visual Studio كمسؤول.

إنشاء مشروع باستخدام CTRL+SHIFT+N

في حوار "New Project"، اختر Cloud > Service Fabric Application.

قم بتسمية التطبيق MyGuestApp واضغط على "Create".

هام

يمكن لـNode.js بسهولة كسر حد الأحرف البالغ 260 حرفاً للمسارات التي تحتوي عليها النوافذ. استخدم مساراً قصيراً للمشروع نفسه مثل c:\code\svc1. بشكل اختياري، يمكنك اتباع هذه الإرشادات لتمكين مسارات الملفات الطويلة في Windows 10.

حوار مشروع جديد في Visual Studio

يمكنك إنشاء أي نوع من خدمة Service Fabric من مربع الحوار التالي. لهذا التشغيل السريع، اختر "Guest Executable".

قم بتسمية الخدمة MyGuestService وتعيين الخيارات الموجودة على اليمين إلى القيم التالية:

الإعداد القيمة
مجلد حزمة التعليمات البرمجية <المجلد الذي يحتوي على تطبيق Node.js>
سلوك حزمة التعليمات البرمجية نسخ محتويات المجلد إلى المشروع
Program node.exe
الوسيطات server.js
مجلد العمل CodePackage

اضغط على "OK".

مربع حوار خدمة جديدة في Visual Studio

يُنشئ Visual Studio مشروع التطبيق ومشروع خدمة المستخدم ويعرضهما في Solution Explorer.

لا يحتوي مشروع التطبيق (MyGuestApp) على أي تعليمة برمجية بشكل مباشر. يشير المشروع إلى مجموعة من مشاريع الخدمات. وأيضاً، يحتوي على ثلاثة أنواع أخرى من المحتوى:

  • نشر ملفات التعريف
    توفير أدوات التفضيلات للبيئات المختلفة.

  • نصوص
    برنامج PowerShell النصي لتوزيع/ترقية التطبيق الخاص بك.

  • تعريف التطبيق
    يتضمن بيان التطبيق ضمن ApplicationPackageRoot. توجد ملفات معلمات التطبيق المقترنة ضمن ApplicationParameters، والتي تحدد التطبيق وتسمح لك بتكوينه خصوصاً لبيئة معينة.

للحصول على نظرة عامة عن محتويات مشروع الخدمة، راجع بدء استخدام الخدمات الموثوقة.

إعداد الشبكات

يستخدم مثال تطبيق Node.js الذي نوزعه المنفذ 80 ونحتاج إلى إخبار Service Fabric بأننا بحاجة إلى كشف هذا المنفذ.

افتح ملف ServiceManifest.xml في المشروع. في الجزء السفلي من البيان، يوجد <Resources> \ <Endpoints> يحتوي على إدخال تم تعريفه بالفعل. قم بتعديل هذا الإدخال لإضافة Port وProtocol وType.

  <Resources>
    <Endpoints>
      <!-- This endpoint is used by the communication listener to obtain the port on which to 
           listen. Please note that if your service is partitioned, this port is shared with 
           replicas of different partitions that are placed in your code. -->
      <Endpoint Name="MyGuestAppServiceTypeEndpoint" Port="80" Protocol="http" Type="Input" />
    </Endpoints>
  </Resources>

نشر في Azure

إذا قمت بالضغط على F5 وتشغيل المشروع، يتم توزيعه إلى نظام المجموعة المحلية. ومع ذلك، دعنا نوزعه في Azure بدلاً من ذلك.

انقر بزر الماوس الأيمن فوق المشروع واختر Publish... ما يفتح مربع حوار للنشر إلى Azure.

النشر لمربع حوار azure لخدمة تصميم الخدمة

حدد ملف التعريف المستهدف PublishProfiles\Cloud.xml.

إذا لم تكن قد قمت بذلك من قبل، فاختر حساب Azure للتوزيع. إذا لم يكن لديك واحد حتى الآن، فقم بالتسجيل للحصول على واحد.

ضمن "Connection Endpoint"، حدد نظام مجموعة Service Fabric للتوزيع فيها. إذا لم تكن لديك واحدة، فحدد <Create New Cluster...> ما يفتح نافذة مستعرض الويب إلى مدخل Microsoft Azure. لمزيد من المعلومات، راجع إنشاء نظام مجموعة في المدخل.

عند إنشاء نظام مجموعة Service Fabric، تأكد من تعيين إعداد Custom endpoints إلى 80.

تكوين نوع عقدة تصميم الخدمة بنقطة نهاية مخصصة

يستغرق إنشاء نظام مجموعة Service Fabric جديدة بعض الوقت لإكماله. بمجرد إنشائه، ارجع إلى مربع الحوار النشر وحدد <"Refresh">. يتم إدراج نظام المجموعة الجديدة في المربع المنسدل؛ حدده.

اضغط على "Publish" وانتظر حتى ينتهي التوزيع.

قد يستغرق ذلك بضع دقائق. بعد اكتماله، قد يستغرق الأمر بضع دقائق أخرى حتى يكون التطبيق متاحاً بالكامل.

اختبار الموقع

بعد نشر الخدمة، اختبرها في مستعرض ويب.

أولاً، افتح مدخل Microsoft Azure وابحث عن خدمة Service Fabric.

تحقق من جزء النظرة العامة الخاص بعنوان الخدمة. استخدم اسم المجال من خاصية Client connection endpoint. على سبيل المثال، ⁧http://mysvcfab1.westus2.cloudapp.azure.com⁩.

جزء نظرة عامة على تصميم الخدمة على مدخل Microsoft Azure

انتقل إلى هذا العنوان حيث سترى الاستجابة HELLO WORLD.

قم بحذف نظام المجموعة

لا تنس حذف جميع الموارد التي أنشأتها لهذا التشغيل السريع، حيث يتم تحصيل رسوم منك مقابل هذه الموارد.

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

اقرأ المزيد عن الملفات التنفيذية للضيوف.