إدارة تطبيق الوظائف الخاص بك
في Azure Functions، يوفر تطبيق الوظائف سياق التنفيذ للوظائف الفردية الخاصة بك. تنطبق سلوكيات تطبيق الوظيفة على جميع الوظائف التي يستضيفها تطبيق وظائف معين. يجب أن تكون جميع الوظائف الموجودة في تطبيق وظائف ما بنفس اللغة.
يتم نشر الوظائف الفردية في تطبيق وظائف ما معًا ويتم تغيير سعتها معًا. تشترك جميع الوظائف الموجودة في تطبيق الوظائف نفسه في نفس الموارد، لكل مثيل، بينما يتم تغيير سعة تطبيق الوظيفة.
يتم تحديد سلاسل الاتصال ومتغيرات البيئة والإعدادات الأخرى للتطبيق بشكل منفصل لكل تطبيق وظائف. يجب تخزين أي بيانات يجب مشاركتها بين تطبيقات الوظائف خارجيًا في مخزن مستمر.
بدء تشغيل مدخل Microsoft Azure
إشعار
بسبب القيود المفروضة على تحرير التعليمات البرمجية للدالة في مدخل Microsoft Azure، يجب عليك تطوير وظائفك محليا ونشر مشروع التعليمات البرمجية إلى تطبيق دالة في Azure. لمزيد من المعلومات، راجع قيود التطوير في مدخل Microsoft Azure
لعرض إعدادات التطبيق في تطبيق الوظائف، اتبع الخطوات التالية:
تسجيل الدخول إلى مدخل Microsoft Azure باستخدام حساب Azure الخاص بك. ابحث عن تطبيق الوظائف وحدده.
في الجزء الأيمن من تطبيق الوظائف، قم بتوسيع الإعدادات، وحدد متغيرات البيئة، ثم حدد علامة التبويب إعدادات التطبيق.
العمل باستخدام إعدادات التطبيق
بالإضافة إلى إعدادات التطبيق المعرفة مسبقا التي تستخدمها Azure Functions، يمكنك إنشاء أي عدد من إعدادات التطبيق، كما هو مطلوب من قبل التعليمات البرمجية للدالة. لمزيد من المعلومات، راجع مرجع إعدادات التطبيق لدالات Azure.
يتم تخزين هذه الإعدادات بهيئة مشفرة. لمزيد من المعلومات، راجع أمان إعدادات التطبيق.
يمكنك إدارة إعدادات التطبيق من مدخل Microsoft Azure، وباستخدام Azure CLI وAzure PowerShell. يمكنك أيضا إدارة إعدادات التطبيق من Visual Studio Code ومن Visual Studio.
لعرض إعدادات التطبيق، راجع بدء الاستخدام في مدخل Microsoft Azure.
تحتفظ علامة التبويب إعدادات التطبيق بالإعدادات التي يستخدمها تطبيق الوظائف:
استخدام إعدادات التطبيق
يمكن أيضًا قراءة قيم إعدادات تطبيق الدالة في التعليمات البرمجية كمتغيرات البيئة. لمزيد من المعلومات، راجع قسم متغيرات البيئة في هذه المقالات المرجعية الخاصة باللغة:
عند تطوير تطبيق دالة محليا، يجب الاحتفاظ بنسخ محلية من هذه القيم في ملف مشروع local.settings.json . لمزيد من المعلومات، راجع ملف الإعدادات المحلية.
إعدادات نشر FTPS
تدعم Azure Functions نشر التعليمات البرمجية للمشروع إلى تطبيق الوظائف باستخدام FTPS. نظرا لأن أسلوب النشر هذا يتطلب منك مزامنة المشغلات، فلا يوصى به. لنقل ملفات المشروع بأمان، استخدم دائما FTPS وليس FTP.
للحصول على بيانات الاعتماد المطلوبة لنشر FTPS، استخدم إحدى الطرق التالية:
يمكنك الحصول على بيانات اعتماد نشر FTPS في مدخل Microsoft Azure عن طريق تنزيل ملف تعريف النشر لتطبيق الوظائف الخاص بك.
هام
يحتوي ملف تعريف النشر على بيانات اعتماد أمان مهمة. قم دائما بتأمين الملف الذي تم تنزيله على الكمبيوتر المحلي.
لتنزيل ملف تعريف النشر لتطبيق الوظائف الخاص بك:
في مدخل Microsoft Azure، حدد موقع صفحة تطبيق الوظائف، وقم بتوسيع Settings>Configuration في العمود الأيسر.
في صفحة التكوين، حدد علامة التبويب الإعدادات العامة وتأكد من تشغيل بيانات اعتماد نشر المصادقة الأساسية ل SCM. عندما يكون هذا الإعداد قيد إيقاف التشغيل، لا يمكنك استخدام ملفات تعريف النشر، لذا حدد تشغيل ثم حفظ.
ارجع إلى صفحة نظرة عامة على تطبيق الوظائف، ثم حدد الحصول على ملف تعريف النشر.
قم بحفظ محتويات الملف ونسخها.
- في الملف، حدد موقع
publishProfile
العنصر مع السمةpublishMethod="FTP"
. في هذا العنصر،publishUrl
userName
تحتوي السمات و وuserPWD
على عنوان URL الهدف وبيانات الاعتماد لنشر FTPS.
نوع خطة الاستضافة
عند إنشاء تطبيق وظيفة، فإنك تقوم أيضا بإنشاء خطة استضافة يعمل التطبيق تبعًا لها. يمكن أن تحتوي خطة ما على تطبيق أو أكثر من تطبيقات الوظائف. تعتمد الوظائف، والتحجيم، والأسعار على نوع الخطة. لمزيد من المعلومات، راجع خيارات الاستضافة في دالات Azure.
يمكنك تحديد نوع الخطة المستخدمة من قِبل تطبيق الوظائف الخاص بك من مدخل Microsoft Azure، أو باستخدام واجهات سطر الأوامر من Azure أو واجهات برمجة التطبيقات Azure PowerShell.
تشير القيم التالية إلى نوع الخطة:
نوع الخطة | مدخل Azure | واجهة سطر الأوامر من Azure/PowerShell |
---|---|---|
استهلاك | استهلاك | Dynamic |
قسط | ElasticPremium | ElasticPremium |
مخصصة (App Service) | متنوع | متنوع |
لتحديد نوع الخطة المستخدمة من قبل تطبيق الوظائف، راجع خطة خدمة التطبيقات في صفحة نظرة عامة لتطبيق الوظائف في مدخل Microsoft Azure.
لمشاهدة مستوى التسعير، حدد اسم App Service Plan، ثم حدد Settings > Properties من الجزء الأيمن.
ترحيل الخطة
يمكنك ترحيل تطبيق دالة بين خطة Consumption وخطة Premium على Windows. عند الترحيل بين الخطط، ضع في اعتبارك الاعتبارات التالية:
- الترحيل المباشر إلى خطة مخصصة (خدمة التطبيقات) غير مدعوم.
- الترحيل غير مدعوم على Linux.
- يجب أن تكون خطة المصدر والخطة الهدف في نفس مجموعة الموارد والمنطقة الجغرافية. لمزيد من المعلومات، راجع نقل تطبيق لخطة App Service .
- تعتمد أوامر CLI المحددة على اتجاه الترحيل.
- يحدث وقت التعطل في عمليات تنفيذ الوظائف عند ترحيل تطبيق الوظائف بين الخطط.
- يتم الاحتفاظ بالحالة والمحتوى الآخر الخاص بالتطبيق، لأن نفس مشاركة ملفات Azure يستخدمها التطبيق قبل الترحيل وبعده.
يمكنك ترحيل خطتك باستخدام هذه الأدوات:
اختر اتجاه الترحيل لتطبيقك على Windows.
قيود التطوير في مدخل Microsoft Azure
يعرض الجدول التالي أنظمة التشغيل واللغات التي تدعم التحرير في المدخل:
اللغة | استهلاك Windows | Windows Premium | الـ Windows المخصص | استهلاك Linux | Linux Premium | الـ Linux المخصص |
---|---|---|---|---|---|---|
C# | ||||||
Java | ||||||
JavaScript (Node.js) | ✔ | ✔ | ✔ | ✔ | ✔ | |
Python | ✔ | ✔ | ✔ | |||
PowerShell | ✔ | ✔ | ✔ | |||
TypeScript (Node.js) |
ضع في اعتبارك هذه القيود عند تطوير وظائفك في مدخل Microsoft Azure:
- يتم دعم التحرير في المدخل فقط للوظائف التي تم إنشاؤها أو آخر تعديل في مدخل Microsoft Azure.
- يتم دعم التحرير في المدخل فقط لوظائف JavaScript وPowerShell وPython وC# Script.
- التحرير في المدخل غير مدعوم في إصدار المعاينة لخطة Flex Consumption.
- عند نشر التعليمات البرمجية إلى تطبيق دالة من خارج مدخل Microsoft Azure، لم يعد بإمكانك تحرير أي من التعليمات البرمجية لتطبيق الوظائف هذا في المدخل. في هذه الحالة، ما عليك سوى الاستمرار في استخدام التطوير المحلي.
- بالنسبة إلى Python، التطوير باستخدام الوحدات النمطية المخصصة غير مدعوم حاليا في المدخل. لإضافة وحدات نمطية مخصصة إلى تطبيق الوظائف، يجب عليك تطوير تطبيقك محليا.
- بالنسبة إلى وظائف C# المحولة برمجيا ووظائف Java، يمكنك إنشاء تطبيق الوظائف والموارد ذات الصلة في المدخل. ومع ذلك، يجب إنشاء مشروع التعليمات البرمجية للوظائف محليا ثم نشره إلى Azure.
عندما يكون ذلك ممكنا، قم بتطوير وظائفك محليا ونشر مشروع التعليمات البرمجية إلى تطبيق دالة في Azure. وللحصول على مزيد من المعلومات، انظر التعليمات البرمجية لخدمة وظائف Azure Functions واختبارها محليًا.
تثبيت الملحقات يدويا
يمكن أن تتضمن دوال مكتبة الفئة C# حزم NuGet لملحقات الربط مباشرة في مشروع مكتبة الفئة. بالنسبة للغات non-.NET الأخرى والبرنامج النصي C#، يجب استخدام حزم الملحقات. إذا كان يجب تثبيت الملحقات يدويا، يمكنك القيام بذلك باستخدام Azure Functions Core Tools محليا. إذا لم تتمكن من استخدام حزم الملحقات وكنت قادرا فقط على العمل في المدخل، فأنت بحاجة إلى استخدام أدوات متقدمة (Kudu) لإنشاء ملف extensions.csproj يدويا مباشرة في الموقع. تأكد أولا من إزالة extensionBundle
العنصر من ملف host.json .
تعمل هذه العملية نفسها مع أي ملف آخر تحتاج إلى إضافته إلى تطبيقك.
هام
عندما يكون ذلك ممكنا، لا تقم بتحرير الملفات مباشرة في تطبيق الوظائف في Azure. نوصي بتنزيل ملفات التطبيق محليا، واستخدام أدوات أساسية لتثبيت الملحقات والحزم الأخرى، والتحقق من صحة التغييرات، ثم إعادة نشر تطبيقك باستخدام أدوات أساسية أو إحدى طرق التوزيع المدعومة الأخرى.
يتيح لك محرر الوظائف المضمن في مدخل Microsoft Azure تحديث التعليمات البرمجية للدالة وملفات التكوين مباشرة في المدخل:
حدد تطبيق الوظائف، ثم ضمن Functions، حدد Functions.
اختر دالتك وحدد اختبار + تعليمة برمجية ضمن مطور.
اختر الملف لتحريره وحدد حفظ عند الانتهاء.
يجب إنشاء الملفات الموجودة في جذر التطبيق، مثل function.proj أو extensions.csproj وتحريرها باستخدام Advanced Tools (Kudu):
حدد تطبيق الوظائف، وقم بتوسيع أدوات التطوير، ثم حدد أدوات متقدمة>Go.
إذا طلب منك ذلك، فسجل الدخول إلى موقع إدارة التحكم بالمصادر (SCM) باستخدام بيانات اعتماد Azure.
من قائمة وحدة تحكم تتبع الأخطاء، اختر CMD.
انتقل إلى
.\site\wwwroot
، وحدد زر زائد (+) في الأعلى، وحدد ملف جديد.امنح الملف اسما، مثل
extensions.csproj
، ثم اضغط على مفتاح الإدخال Enter.حدد زر التحرير بجوار الملف الجديد، وأضف التعليمات البرمجية أو حدثها في الملف، ثم حدد حفظ.
بالنسبة لملف مشروع مثل extensions.csproj، قم بتشغيل الأمر التالي لإعادة إنشاء مشروع الملحقات:
dotnet build extensions.csproj
ميزات النظام الأساسي
تعمل تطبيقات الوظائف في النظام الأساسي ل Azure App Service، والذي يحافظ عليها. على هذا النحو، تتمتع تطبيقات الوظائف الخاصة بك بالوصول إلى معظم ميزات النظام الأساسي لاستضافة الويب الأساسي في Azure. عند استخدام مدخل Microsoft Azure، فإن الجزء الأيمن هو المكان الذي يمكنك فيه الوصول إلى العديد من ميزات النظام الأساسي ل App Service التي يمكنك استخدامها في تطبيقات الوظائف.
تشير المصفوفة التالية إلى دعم ميزة مدخل Microsoft Azure من خلال خطة الاستضافة ونظام التشغيل:
ميزة | خطة الاستهلاك | خطة استهلاك Flex | الخطة المتميزة | الخطة المخصصة |
---|---|---|---|---|
أدوات متقدمة (Kudu) | نوافذ: ✔ Linux: X |
X | ✔ | ✔ |
محرر App Service | نوافذ: ✔ Linux: X |
X | نوافذ: ✔ Linux: X |
نوافذ: ✔ Linux: X |
النسخ الاحتياطي | X | X | X | ✔ |
عزى | Windows: سطر الأوامر Linux: X |
X | Windows: سطر الأوامر Linux: SSH |
Windows: سطر الأوامر Linux: SSH |
تركز بقية هذه المقالة على الميزات التالية في المدخل والمفيد لتطبيقات الدوال الخاصة بك:
لمزيد من المعلومات حول كيفية العمل باستخدام إعدادات App Service، راجع تكوين إعدادات App Service في Azure.
محرر App Service
محرر App Service هو محرر متقدم داخل المدخل يمكنك استخدامه لتعديل ملفات تكوين JSON وملفات التعليمات البرمجية على حدٍ سواء. يؤدي اختيار هذا الخيار إلى تشغيل علامة تبويب مستعرض منفصلة تحتوي على محرر أساسي. يمكنك هذا المحرر من التكامل مع مستودع Git وتشغيل التعليمات البرمجية وتصحيحها وتعديل إعدادات تطبيق الوظائف. يوفر هذا المحرر بيئة تطوير محسنة للوظائف الخاصة بك مقارنة مع محرر الوظائف المضمن.
نوصيك بالتفكير في تطوير وظائفك على الكمبيوتر المحلي الخاص بك. عند التطوير محليا والنشر إلى Azure، تكون ملفات المشروع للقراءة فقط في مدخل Microsoft Azure. وللحصول على مزيد من المعلومات، انظر التعليمات البرمجية لخدمة وظائف Azure Functions واختبارها محليًا.
وحدة تحكم
وحدة التحكم داخل المدخل هي أداة مطور مثالية عندما تفضل التفاعل مع تطبيق الوظائف الخاص بك من سطر الأوامر. تتضمن الأوامر الشائعة إنشاء الدليل والملف والتنقل، بالإضافة إلى تنفيذ ملفات الدفعات والبرامج النصية.
عند التطوير محليًا، نوصي باستخدام أدوات الوظائف الأساسية من Azure و واجهة سطر الأوامر من Azure.
أدوات متقدمة (Kudu)
توفر الأدوات المتقدمة الخاصة بـ App Service (المعروفة أيضًا باسم Kudu) الوصول إلى الميزات الإدارية المتقدمة لتطبيق الوظائف الخاص بك. من Kudu، يمكنك إدارة معلومات النظام، إعدادات التطبيق، متغيرات البيئة، ملحقات الموقع، عناوين HTTP، ومتغيرات الخادم. يمكنك أيضا تشغيل Kudu عن طريق الاستعراض إلى نقطة نهاية SCM لتطبيق الوظائف الخاص بك، على سبيل المثال: https://<myfunctionapp>.scm.azurewebsites.net/
.
مركز التوزيع
عند استخدام حل عنصر تحكم بالتعليمات البرمجية المصدر لتطوير التعليمات البرمجية للوظائف والاحتفاظ بها، يتيح لك مركز النشر إجراء الإنشاء والنشر من عنصر التحكم بالتعليمات البرمجية المصدر. يتم إنشاء المشروع ونشره إلى Azure عند إجراء التحديثات. للحصول على مزيدٍ من المعلومات، راجع تقنيات النشر في Azure Functions.
مشاركة الموارد عبر المنشأ
لمنع تنفيذ التعليمات البرمجية الضارة على العميل، تمنع المستعرضات الحديثة الطلبات الواردة من تطبيقات الويب إلى الموارد التي تعمل في مجال منفصل. تتيح مشاركة الموارد عبر المنشأ (CORS)Access-Control-Allow-Origin
لعنوان ما الإعلان عن أي الأصول المسموح لها باستدعاء نقاط النهاية على تطبيق الوظائف الخاص بك.
عند تكوين قائمة الأصول المسموح بها لتطبيق الوظائف الخاص بك، تتم إضافة العنوان Access-Control-Allow-Origin
تلقائيًا إلى كافة الاستجابات من نقاط نهاية HTTP في تطبيق الوظائف الخاص بك.
إذا كان هناك إدخال مجال آخر، يتم تجاهل حرف البدل (*).
المصادقة
عندما تستخدم الوظائف مشغل HTTP، يمكنك طلب أن تتم مصادقة الاستدعاءات أولاً. تدعم App Service مصادقة Microsoft Entra وتسجيل الدخول مع موفري الخدمات الاجتماعية، مثل Facebook وMicrosoft وX. للحصول على معلومات حول تكوين موفري مصادقة محددين، راجع نظرة عامة على مصادقة Azure App Service.