استضافة خطة استهلاك Azure Functions Flex

Flex Consumption هي خطة استضافة Azure Functions المستندة إلى Linux والتي تستند إلى الاستهلاك تدفع مقابل ما تستخدمه لنموذج الفوترة بلا خادم. فهو يمنحك المزيد من المرونة وقابلية التخصيص من خلال إدخال الشبكات الخاصة، وتحديد حجم ذاكرة المثيل، وميزات توسيع النطاق السريعة/الكبيرة التي لا تزال تستند إلى نموذج بلا خادم.

هام

خطة Flex Consumption قيد المعاينة حاليا. للحصول على قائمة بالقيود الحالية عند استخدام خطة الاستضافة هذه، راجع الاعتبارات. للحصول على المعلومات الحالية حول الفوترة أثناء المعاينة، راجع الفوترة.

يمكنك مراجعة العينات الشاملة التي تتميز بخطة استهلاك Flex في مستودع عينات خطة Flex Consumption.

المزايا

تعتمد خطة Flex Consumption على نقاط قوة خطة الاستهلاك، والتي تتضمن التحجيم الديناميكي والفوترة المستندة إلى التنفيذ. باستخدام Flex Consumption، يمكنك أيضا الحصول على هذه الميزات الإضافية:

يساعدك هذا الجدول مباشرة على مقارنة ميزات استهلاك Flex مع خطة استضافة الاستهلاك:

ميزة الاستهلاك‬ استهلاك فليكس
تغيير الحجم إلى الصفر ✅ نعم ✅ نعم
سلوك المقياس مستند إلى الحدث مستند إلى الحدث (سريع)
الشبكات الظاهرية ❌ غير مدعوم ✅ مدعم
حساب مخصص (التخفيف من البدايات الباردة) ❌ اي ✅ مثيلات جاهزة دائما (اختياري)
الفوترة وقت التنفيذ فقط وقت التنفيذ + مثيلات جاهزة دائما
مثيلات التوسيع (الحد الأقصى) 200 1000

للحصول على مقارنة كاملة لخطة استهلاك Flex مقابل خطة الاستهلاك وجميع أنواع الخطط والاستضافة الأخرى، راجع نطاق الوظيفة وخيارات الاستضافة.

تكامل الشبكة الظاهرية

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

ذاكرة المثيل

عند إنشاء تطبيق الوظائف في خطة Flex Consumption، يمكنك تحديد حجم ذاكرة المثيلات التي يتم تشغيل تطبيقك عليها. راجع الفوترة لمعرفة كيفية تأثير أحجام ذاكرة المثيل على تكاليف تطبيق الوظائف.

حاليا، يوفر Flex Consumption خيارات حجم ذاكرة المثيل لكل من 2048 ميغابايت و4096 ميغابايت.

عند تحديد حجم ذاكرة المثيل الذي يجب استخدامه مع تطبيقاتك، إليك بعض الأشياء التي يجب مراعاتها:

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

التحجيم لكل وظيفة

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

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

في تغيير حجم كل وظيفة، HTTP وBlob (شبكة الأحداث) والمشغلات الدائمة هي حالات خاصة. يتم تجميع جميع وظائف HTTP المشغلة في التطبيق وتوسيع نطاقها معا في نفس المثيلات، ويتم تجميع جميع الوظائف التي يتم تشغيلها بشكل دائم (مشغلات التنسيق أو النشاط أو الكيان) وتوسيع نطاقها معا في نفس المثيلات، ويتم تجميع جميع وظائف Blob (شبكة الأحداث) وتوسيع نطاقها معا في نفس المثيلات. يتم تحجيم جميع الوظائف الأخرى في التطبيق بشكل فردي في مثيلاتها الخاصة.

مثيلات جاهزة دائمًا

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

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

لمعرفة كيفية تكوين المثيلات الجاهزة دائما، راجع تعيين عدد المثيلات الجاهزة دائما.

التزامن

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

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

التوزيع

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

الفوترة

هناك وضعان يتم من خلالهما تحديد تكاليفك عند تشغيل تطبيقاتك في خطة Flex Consumption. يتم تحديد كل وضع على أساس كل مثيل.

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

• المبلغ الإجمالي للذاكرة المقدمة بينما يقوم كل مثيل عند الطلب بتنفيذ الوظائف بنشاط (بالثوان GB)، مطروحا منه منحة مجانية تبلغ GB-s شهريا.
• العدد الإجمالي لعمليات الإعدام، مطروحا منه منحة مجانية (عدد) عمليات الإعدام شهريا.
جاهز دائما يمكنك تكوين مثيل واحد أو أكثر، تم تعيينه إلى أنواع مشغلات معينة (HTTP/Durable/Blob) ووظائف فردية، والتي تكون متاحة دائما لتكون قادرة على معالجة الطلبات. عندما يكون لديك أي مثيلات جاهزة دائما ممكنة، تتم محاسبتك على:

• إجمالي مقدار الذاكرة المتوفرة عبر جميع المثيلات الجاهزة دائما، والمعروفة باسم الأساس (بالثوان GB).
• المبلغ الإجمالي للذاكرة المقدمة خلال الوقت الذي يقوم فيه كل مثيل جاهز دائما بتنفيذ الوظائف بنشاط (بالثوان GB).
• العدد الإجمالي لعمليات التنفيذ.

في الفوترة الجاهزة دائما، لا توجد منح مجانية.

الحد الأدنى لفترة التنفيذ القابلة للفوترة لكلا وضعي التنفيذ هو 1000 مللي ثانية. بعد ذلك، يتم تقريب فترة النشاط القابل للفوترة إلى أقرب 100 مللي ثانية. يمكنك العثور على تفاصيل حول عدادات فوترة خطة Flex Consumption في مرجع المراقبة.

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

للحصول على أحدث المعلومات حول تسعير التنفيذ، وتكاليف الأساس الجاهزة دائما، والمنح المجانية لعمليات التنفيذ عند الطلب، راجع صفحة تسعير Azure Functions.

إصدارات مكدس اللغة المدعومة

يعرض هذا الجدول إصدارات مكدس اللغة المدعومة حاليا لتطبيقات Flex Consumption:

مكدس اللغة الإصدار المطلوب
C# (وضع العملية المعزولة)1 .NET 82
Java Java 11، Java 17
Node.js العقدة 20
PowerShell PowerShell 7.4
Python Python 3.10، Python 3.11

1وضع C# قيد المعالجة غير مدعوم. تحتاج بدلا من ذلك إلى ترحيل مشروع التعليمات البرمجية .NET لتشغيله في نموذج العامل المعزول.
2يتطلب إصدارا 1.20.0 أو أحدث من Microsoft.Azure.Functions.Worker والإصدار 1.16.2 أو أحدث من Microsoft.Azure.Functions.Worker.Sdk.

حصص ذاكرة الاشتراك الإقليمية

حاليا في معاينة كل منطقة في اشتراك معين لديها حد 512,000 MB ذاكرة لجميع مثيلات التطبيقات التي تعمل على خطط استهلاك Flex. وهذا يعني أنه في اشتراك ومنطقة معينة، يمكن أن يكون لديك أي مجموعة من أحجام ذاكرة المثيل وعددها، طالما أنها تظل ضمن حد الحصة النسبية. على سبيل المثال، يعني كل الأمثلة التالية أنه تم الوصول إلى الحصة النسبية وستتوقف التطبيقات عن التحجيم:

  • لديك تطبيق 2048 غيغابايت واحد تم تغيير حجمه إلى 100 تطبيق ومقياس تطبيق 2048 غيغابايت ثان إلى 150 مثيلا
  • لديك تطبيق 2048 غيغابايت واحد تم توسيع نطاقه إلى 250 مثيلا
  • لديك تطبيق 4096 غيغابايت واحد تم توسيع نطاقه إلى 125 مثيلا
  • لديك تطبيق واحد بسعة 4096 غيغابايت تم تغيير حجمه إلى 100 تطبيق واحد بسعة 2048 غيغابايت تم تغيير حجمه إلى 50 مثيلا

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

الخصائص والإعدادات المهملة

في Flex Consumption، يتم إهمال العديد من إعدادات التطبيق القياسية وخصائص تكوين الموقع المستخدمة في Bicep وقوالب ARM ومستوى التحكم العام أو نقلها ولا ينبغي استخدامها عند أتمتة إنشاء مورد تطبيق الوظائف. لمزيد من المعلومات، راجع إهمال خطة استهلاك Flex.

الاعتبارات

ضع هذه الاعتبارات الأخرى في الاعتبار عند استخدام خطة استهلاك Flex أثناء المعاينة الحالية:

  • تكامل VNet تأكد من Microsoft.App تمكين موفر موارد Azure لاشتراكك باتباع هذه الإرشادات. تفويض الشبكة الفرعية المطلوب من قبل تطبيقات Flex Consumption هو Microsoft.App/environments.
  • المشغلات: جميع المشغلات مدعومة بالكامل باستثناء مشغلات Kafka وAzure SQL و SignalR. يدعم مشغل تخزين Blob مصدر شبكة الأحداث فقط. يجب أن تستخدم التطبيقات الوظيفية غير C# إصدار [4.0.0, 5.0.0) مجموعة الملحقات أو إصدارا أحدث.
  • المناطق:
    • لا يتم دعم جميع المناطق حاليا. لمعرفة المزيد، راجع عرض المناطق المدعومة حاليا.
    • هناك قيود مؤقتة حيث يتم أيضا تطبيق حدود الحصة النسبية ل App Service لإنشاء تطبيقات جديدة على تطبيقات Flex Consumption. إذا رأيت الخطأ التالي "هذه المنطقة لديها حصة نسبية من 0 مثيلات لاشتراكك. حاول تحديد منطقة أو SKU مختلفة." يرجى رفع تذكرة دعم بحيث يمكن إلغاء حظر إنشاء تطبيقك.
  • عمليات التوزيع: هذه الميزات المتعلقة بالتنشر غير مدعومة حاليا:
    • الفتحات الخاصة بالنشر
    • النشر المستمر باستخدام مهام Azure DevOps (AzureFunctionApp@2)
    • النشر المستمر باستخدام إجراءات GitHub (functions-action@v1)
  • Scale: الحد الأقصى الأدنى للمقياس في المعاينة هو 40. أعلى قيمة مدعومة حاليا هي 1000.
  • التخويل: EasyAuth غير مدعوم حاليا. لا يتم حظر المتصلين غير المصادق عليهم حاليا عند تمكين EasyAuth في تطبيق خطة Flex Consumption.
  • CORS: إعدادات CORS غير مدعومة حاليا. قد تحدث استثناءات إذا تم تكوين CORS لتطبيقات Flex Consumption.
  • التبعيات المدارة: التبعيات المدارة في PowerShell غير مدعومة من قبل Flex Consumption. يجب عليك بدلا من ذلك تحديد الوحدات النمطية المخصصة الخاصة بك.

خياراتاستضافة وظائف Azure إنشاء تطبيقات الوظائف وإدارتها في خطة استهلاك Flex