خطة Azure Functions Premium
تعد Azure Functions Elastic Premium plan خيارًا ديناميكيًا لاستضافة النطاق لتطبيقات الوظائف. للحصول على خيارات أخرى لخطة الاستضافة، راجع مقالة خطة الاستضافة.
هام
يمكن لـ Azure Functions أن تعمل على النظام الأساسي لخدمة تطبيقات Azure. في النظام الأساسي لخدمة التطبيقات، يشار إلى الخطط التي تستضيف تطبيقات وظائف Premium plan باسم Elastic Premium plans، مع أسماء SKU مثل EP1
. إذا اخترت تشغيل تطبيق الوظائف على Premium plan، فتأكد من إنشاء خطة باسم SKU تبدأ بـ "E"، مثل EP1
. أسماء SKU خطة خدمة التطبيقات التي تبدأ بـ "P"، مثل P1V2
(Premium V2 Small plan)، هي في الواقع خطط استضافة مخصصة. نظرًا إلى أنها مخصصة وليست Elastic Premium، فإن الخطط التي تحمل أسماء SKU التي تبدأ بـ "P" لن يتم قياسها ديناميكيًا وقد تزيد من تكاليفك.
توفر استضافة Premium plan المزايا التالية لوظائفك:
- تجنب البدايات الباردة في الحالات الدافئة.
- اتصال الشبكة الظاهرية.
- يدعم مدد وقت التشغيل الأطول.
- اختيار أحجام مثيلات Premium.
- أسعار يمكن التنبؤ بها بشكل أكبر، مقارنة بخطة الاستهلاك.
- تخصيص تطبيق عالي الكثافة للخطط التي تتضمن تطبيقات وظائف متعددة.
- يدعم عمليات توزيع حاويات Linux.
عند استخدام Premium plan، تتم إضافة مثيلات مضيف Azure Functions وإزالتها استنادًا إلى عدد الأحداث الواردة، تمامًا مثل خطة الاستهلاك. يمكن نشر تطبيقات وظائف متعددة على Premium plan نفسها، وتسمح لك الخطة بتكوين حجم مثيل الحساب، وحجم الخطة الأساسية، والحد الأقصى لحجم الخطة.
الفوترة
تكون فواتير Premium plan على أساس عدد ثواني الذاكرة الأساسية والذاكرة المخصصة عبر المثيلات. هذه الفوترة تختلف عن خطة الاستهلاك، والتي يتم فوترتها استنادًا إلى استهلاك الموارد وتنفيذها في الثانية. لا توجد رسوم تنفيذ في خطة Premium. ينتج عن الفواتير هذه حد أدنى من التكلفة الشهرية لكل خطة نشطة، بصرف النظر عما إذا كانت الوظيفة نشطة أو خاملة. ضع في اعتبارك أن جميع تطبيقات الوظائف في Premium plan تشترك في المثيلات المخصصة. لمعرفة المزيد، راجع صفحة أسعار Azure Functions.
إشعار
تحتوي كل premium plan على مثيل نشط (صادر به فاتورة) واحد على الأقل في جميع الأوقات.
إنشاء Premium plan
عند إنشاء تطبيق وظائف في Azure portal، تكون خطة الاستهلاك هي الافتراضية. لإنشاء تطبيق وظائف يعمل في Premium plan، يجب عليك إنشاء أو اختيار خطة استضافة Azure Functions Premium بشكل صريح باستخدام إحدى وحدات Elastic Premium SKUs. ثم تتم استضافة تطبيق الوظائف الذي تنشئه في هذه الخطة. تسهل Azure portal إنشاء كل من Premium plan وتطبيق الوظائف في نفس الوقت. يمكنك تشغيل أكثر من تطبيق وظيفي واحد في نفس خطة Premium، ولكن يجب أن يعمل كلاهما على نفس نظام التشغيل (Windows أو Linux).
توضح لك المقالات التالية كيفية إنشاء تطبيق دالة برمجيا باستخدام خطة Premium:
القضاء على البدايات الباردة
عندما لا تحدث أحداث أو عمليات تنفيذ في خطة الاستهلاك، قد يتم توسيع نطاق تطبيقك إلى صفر مثيلات. عند حدوث أحداث جديدة، يجب أن يكون المثيل الجديد الذي يعمل عليه تطبيقك متخصصًا. تستغرق المثيلات الجديدة المتخصصة وقتا، اعتمادا على التطبيق. غالبًا ما يسمى زمن الانتقال الإضافي هذا في الاتصال الأول البداية الباردة للتطبيق.
توفر الخطة المتميزة ميزتين تعملان معا للقضاء بشكل فعال على البدايات الباردة في وظائفك: مثيلات جاهزة دائما ومثيلات مسبقة الحرب. المثيلات الجاهزة دائما هي فئة من المثيلات المخصصة مسبقا غير المتأثرة بالتحجيم، والمثيلات الجاهزة هي مخزن مؤقت أثناء التحجيم بسبب أحداث HTTP.
عندما تبدأ الأحداث في تشغيل التطبيق، يتم توجيهها أولاً إلى المثيلات الجاهزة دائمًا. عندما تصبح الدالة نشطة بسبب أحداث HTTP، يتم تجهيز مثيلات أخرى كمخزن مؤقت. تسمى هذه المثيلات المخزنة مؤقتا مثيلات مسبقة الحرب. يقلل هذا المخزن المؤقت بدء التشغيل البارد للمثيلات الجديدة المطلوبة في أثناء القياس.
مثيلات جاهزة دائمًا
في Premium plan، يمكن أن تكون تطبيقك جاهزًا دائمًا في عدد محدد من المثيلات. تطبيقك يعمل باستمرار على هذه المثيلات، بغض النظر عن الحمل. إذا تجاوز التحميل ما يمكن للمثيلات الجاهزة دائما التعامل معه، تتم إضافة المزيد من المثيلات حسب الضرورة، حتى الحد الأقصى المحدد.
هذا الإعداد على مستوى التطبيق يتحكم أيضًا في الحد الأدنى لمثيلات خطتك. على سبيل المثال، خذ بعين الاعتبار وجود ثلاثة تطبيقات وظائف في نفس الخطة المتميزة. عندما يكون اثنان من تطبيقاتك جاهزين دائما لتعيين عدد المثيلات إلى واحد وفي مثيل ثالث يتم تعيينه إلى خمسة، يكون الحد الأدنى لعدد خطتك بأكملها هو خمسة. كما يعكس هذا الحد الأدنى لعدد المثيلات التي تتم فوترة خطتك لها. الحد الأقصى لعدد المثيلات الجاهزة دائمًا الذي ندعمه لكل تطبيق هو 20.
يمكنك تكوين عدد المثيلات الجاهزة دائمًا في Azure portal من خلال تحديد تطبيق الوظيفةالخاص بك، والذهاب إلى علامة التبويب Platform Features، وتحديد خيارات Scale Out. في نافذة function app edit، تكون المثيلات الجاهزة دائمًا خاصة بذلك التطبيق.
مثيلات مسبقة الحرب
يوفر إعداد عدد المثيلات مسبقة الاستعداد مثيلات دافئة كمخزن مؤقت أثناء مقياس HTTP وأحداث التنشيط. تستمر المثيلات السابقة للتحجيم في التخزين المؤقت حتى يتم الوصول إلى الحد الأقصى للتوسيع. العدد الافتراضي للمثيلات مسبقة الحرب هو 1، وبالنسبة لمعظم السيناريوهات، يجب أن تظل هذه القيمة ك 1.
خذ بعين الاعتبار سيناريو أقل شيوعا، مثل تطبيق يعمل في حاوية مخصصة. نظرا لأن الحاويات المخصصة لها تجهيز طويل، يمكنك التفكير في زيادة هذا المخزن المؤقت للمثيلات مسبقة الحرب. يصبح المثيل المسبق نشطا فقط بعد استخدام جميع المثيلات النشطة.
يمكنك أيضا تحديد مشغل التجهيز الذي يتم تشغيله أثناء عملية prewarming. يمكنك استخدام مشغل التجهيز لتحميل التبعيات المخصصة مسبقا أثناء عملية ما قبل الحرب بحيث تكون وظائفك جاهزة لبدء معالجة الطلبات على الفور. لمعرفة المزيد، يُرجى الرجوع إلى Azure Functions warmup trigger.
خذ بعين الاعتبار هذا المثال لكيفية عمل المثيلات الجاهزة دائما والمثيلات مسبقة الحرب معا. يحتوي تطبيق الوظائف المتميزة على مثيلين جاهزين دائما تم تكوينهما، والإعداد الافتراضي لمثيل واحد مسبق الاستعداد.
- عندما يكون التطبيق خاملاً ولا يتم تشغيل أي أحداث، يتم توفير التطبيق وتشغيله مثيلان. في هذا الوقت، تتم محاسبتك على المثيلين الجاهزين دائما ولكن لا تتم فوترتك لمثيل مسبق الاستعداد حيث لا يتم تخصيص مثيل مسبق الاستعداد.
- عندما يبدأ تطبيقك في تلقي حركة مرور HTTP، يتم موازنة تحميل الطلبات عبر المثيلين الجاهزين دائما. بمجرد أن يبدأ هذان المثيلان في معالجة الأحداث، تتم إضافة مثيل لملء المخزن المؤقت مسبق الحرب. يعمل التطبيق الآن بثلاثة مثيلات تم توفيرها: المثيلان الجاهزان دائما، والمخزن المؤقت الثالث الجاهز وغير النشط. تتم محاسبتك على المثيلات الثلاثة.
- مع زيادة التحميل ويحتاج تطبيقك إلى المزيد من المثيلات للتعامل مع حركة مرور HTTP، يتم تبديل هذا المثيل مسبق التسخين إلى مثيل نشط. يتم الآن توجيه تحميل HTTP إلى جميع المثيلات الثلاثة، ويتم توفير مثيل رابع على الفور لملء المخزن المؤقت مسبق التحزيم.
- يستمر هذا التسلسل من التحجيم والتحجيم المسبق حتى يتم الوصول إلى الحد الأقصى لعدد المثيلات للتطبيق أو يقل الحمل مما يؤدي إلى تقليص النظام الأساسي بعد فترة. لا توجد مثيلات مسبقة التأزم أو تنشيطها تتجاوز الحد الأقصى.
لا يمكنك تغيير إعداد عدد المثيلات مسبقة الحرب في المدخل، يجب عليك بدلا من ذلك استخدام Azure CLI أو Azure PowerShell.
الحد الأقصى لمثيلات تطبيق الوظائف
بالإضافة إلى الحد الأقصى لعدد الاندفاعات للخطة، يمكنك تكوين حد أقصى لكل تطبيق. يمكن تكوين الحد الأقصى للتطبيق باستخدام حد قياس التطبيق. لا يمكن أن يتجاوز الحد الأقصى لتوسيع نطاق التطبيق الحد الأقصى لمثيلات الاندفاع للخطة.
اتصال الشبكة الخاصة
يمكن لتطبيقات الوظائف المنشورة في خطة Premium الاستفادة من تكامل الشبكة الظاهرية لتطبيقات الويب. عند التكوين، يمكن لتطبيقك الاتصال بالموارد داخل شبكتك الظاهرية أو تأمينه عبر نقاط نهاية الخدمة. تتوفر قيود IP أيضًا على التطبيق لتقييد حركة المرور الواردة.
عند تعيين شبكة فرعية لتطبيق الوظائف الخاص بك في Premium plan، تحتاج إلى شبكة فرعية تحتوي على عناوين IP كافية لكل مثيل محتمل. نحن بحاجة إلى قائمة حظر IP تحتوي على ما لا يقل عن 100 عنوان متاح.
لمزيد من المعلومات، راجع دمج تطبيق الوظائف مع شبكة ظاهرية.
قياس مرن سريع
تتم إضافة المزيد من مثيلات الحوسبة تلقائيا لتطبيقك باستخدام نفس منطق التحجيم السريع مثل خطة الاستهلاك. يتم قياس التطبيقات في خطة خدمة التطبيقات نفسها بشكل مستقل عن بعضها البعض استنادًا إلى احتياجات تطبيق فردي. ومع ذلك، تشارك تطبيقات الوظائف في نفس خطة خدمة التطبيقات موارد VM للمساعدة في تقليل التكاليف، عندما يكون ذلك ممكنًا. يعتمد عدد التطبيقات المرتبطة بـ VM على بصمة كل تطبيق وحجم VM.
لمعرفة المزيد حول كيفية عمل التحجيم، راجع التحجيم حسب الحدث في Azure Functions.
مدة تشغيل أطول
تقتصر الوظائف في خطة الاستهلاك على 10 دقائق لتنفيذ واحد. في Premium plan، تقتصر مدة التشغيل على 30 دقيقة لمنع التنفيذات الشاردة. ومع ذلك، يمكنك تعديل تكوين host.json لجعل المدة غير محدودة لتطبيقات الخطة المتميزة، مع القيود التالية:
- يمكن أن تؤدي ترقيات النظام الأساسي إلى إيقاف تشغيل مدار وإيقاف تنفيذ الوظيفة مع فترة سماح مدتها 10 دقائق.
- هناك مؤقت خامول يوقف العامل بعد 60 دقيقة دون تنفيذ أي عمليات إعدام جديدة.
- يمكن أن يتسبب سلوك التوسيع في إيقاف تشغيل العامل بعد 60 دقيقة.
- يمكن أن تنهي تبديلات الفتحات عمليات التنفيذ على فتحات المصدر والهدف أثناء التبديل.
الترحيل
إذا كان لديك تطبيق وظيفة موجود، فيمكنك استخدام أوامر Azure CLI لترحيل تطبيقك بين خطة الاستهلاك وخطة Premium على Windows. تعتمد الأوامر المحددة على اتجاه الترحيل. لمعرفة المزيد، راجع تخطيط الترحيل.
هذه الهجرة غير مدعومة على Linux.
إعدادات الخطة المتميزة
عند إنشاء الخطة، هناك إعدادان لحجم الخطة: الحد الأدنى لعدد المثيلات (أو حجم الخطة) والحد الأقصى للاندفاع.
إذا كان تطبيقك يتطلب مثيلات تتجاوز المثيلات الجاهزة دائما، فيمكنه الاستمرار في التوسع حتى يصل عدد المثيلات إلى الحد الأقصى للاندفاع للخطة، أو الحد الأقصى لتوسيع نطاق التطبيق إذا تم تكوينه. تتم محاسبتك على المثيلات فقط أثناء تشغيلها وتخصيصها لك، على أساس كل ثانية. يبذل النظام الأساسي قصارى جهده في توسيع نطاق تطبيقك إلى الحدود القصوى المحددة.
يمكنك تكوين حجم الخطة والحدود القصوى في مدخل Microsoft Azure عن طريق تحديد خيارات SQL Server Integration Services Scale Out ضمن Settingsتطبيق وظيفة تم توزيعه في تلك الخطة.
الحد الأدنى لكل خطة Premium هو مثيل واحد على الأقل. يتم تحديد الحد الأدنى الفعلي لعدد المثيلات لك استنادا إلى المثيلات الجاهزة دائما التي تطلبها التطبيقات في الخطة. على سبيل المثال، إذا طلب التطبيق A خمسة مثيلات جاهزة دائما، وطلب التطبيق B مثيلين جاهزين دائما في نفس الخطة، يتم تحديد الحد الأدنى لحجم الخطة على أنه خمسة. يتم تشغيل التطبيق A على جميع العناصر الخمسة، والتطبيق B يعمل فقط على 2.
هام
يتم محاسبتك على كل مثيل مخصص في الحد الأدنى لعدد المثيلات بصرف النظر عما إذا كانت الوظائف تنفذ أم لا تُنفذ.
في معظم الحالات، يكون هذا الحد الأدنى المحتسب تلقائيًا كافيًا. ومع ذلك، التحجيم إلى ما بعد الحد الأدنى يحدث عند بذل أقصى جهد. من الممكن، على الرغم من أنه من غير المحتمل، أن يتم تأخير توسيع النطاق في وقت محدد إذا لم تتوفر مثيلات أخرى. من خلال تعيين حد أدنى أعلى من الحد الأدنى المحتسب تلقائيًا، يمكنك حجز مثيلات قبل التحجيم.
يمكنك تكوين الحد الأدنى من المثيلات في مدخل Microsoft Azure عن طريق تحديد خيارات SQL Server Integration Services Scale Out ضمن Settingsتطبيق وظيفة تم توزيعه في تلك الخطة.
وحدات SKU المثيل المتوفرة
عند إنشاء الخطة أو تحجيمها، يمكنك الاختيار بين ثلاثة أحجام للمثيل. تتم محاسبتك على العدد الإجمالي للذاكرات الأساسية والذاكرة المقدمة، في الثانية التي يتم تخصيص كل مثيل لك. يمكن أن تحجيم تطبيقك تلقائيًا إلى مثيلات متعددة حسب الحاجة.
وحدة حفظ المخزون SKU | الذاكرات الأساسية | الذاكرة | التخزين |
---|---|---|---|
EP1 | 1 | 3.5 جيجابايت | 250 جيجابايت |
EP2 | 2 | 7 جيجابايت | 250 جيجابايت |
EP3 | 4 | 14 جيجابايت | 250 جيجابايت |
اعتبارات استخدام الذاكرة
لا يعني التشغيل على جهاز يحتوي على ذاكرة أكبر دائمًا أن تطبيق الوظائف لديك يستخدم كل الذاكرة المتوفرة.
على سبيل المثال، يتم تقييد تطبيق وظائف JavaScript بالحد الافتراضي للذاكرة في Node.js. لزيادة حد الذاكرة الثابت هذا، أضف إعداد التطبيق languageWorkers:node:arguments
بقيمة --max-old-space-size=<max memory in MB>
.
وبالنسبة للخطط التي تزيد سعتها عن 4 غيغابايت من الذاكرة، تأكد من تعيين إعداد النظام الأساسي ل Bitness إلى 64 Bit
ضمن الإعدادات العامة.
الحد الأقصى للتوسع في المنطقة
هذه هي قيم التوسيع القصوى المدعومة حاليا لخطة واحدة في كل منطقة وتكوين نظام التشغيل:
المنطقة | Windows | Linux |
---|---|---|
وسط أستراليا | 100 | 20 |
وسط أستراليا 2 | 100 | غير متوفر |
شرق أستراليا | 100 | 40 |
جنوب شرق أستراليا | 100 | 20 |
جنوب البرازيل | 100 | 20 |
وسط كندا | 100 | 100 |
وسط الهند | 100 | 20 |
Central US | 100 | 100 |
منطقة شرق الصين 2 | 20 | 20 |
منطقة شمال الصين 2 | 20 | 20 |
منطقة شمال الصين 3 | 20 | 20 |
شرق آسيا | 100 | 20 |
شرق الولايات المتحدة | 100 | 100 |
East US 2 | 80 | 100 |
وسط فرنسا | 100 | 60 |
وسط غرب ألمانيا | 100 | 20 |
إسرائيل الوسطى | 100 | 20 |
منطقة شمال إيطاليا | 100 | 20 |
شرق اليابان | 100 | 20 |
غرب اليابان | 100 | 20 |
جيو الهند الغربية | 100 | 20 |
وسط كوريا | 100 | 20 |
منطقة جنوب كوريا الجنوبية | 40 | 20 |
وسط المكسيك | 20 | 20 |
وسط شمال الولايات المتحدة | 100 | 20 |
أوروبا الشمالية | 100 | 100 |
شرق النرويج | 100 | 20 |
جنوب أفريقيا | 100 | 20 |
جنوب غرب أفريقيا | 20 | 20 |
South Central US | 100 | 100 |
جنوب الهند | 100 | غير متوفر |
جنوب شرق آسيا | 100 | 20 |
وسط إسبانيا | 20 | 20 |
شمال سويسرا | 100 | 20 |
غرب سويسرا | 100 | 20 |
شمال الإمارات العربية المتحدة | 100 | 20 |
جنوب المملكة المتحدة | 100 | 100 |
غرب المملكة المتحدة | 100 | 20 |
حكومة ولاية أريزونا الأمريكية | 20 | 20 |
USGov Texas | 20 | غير متوفر |
USGov Virginia | 80 | 20 |
غرب وسط الولايات المتحدة | 100 | 20 |
أوروبا الغربية | 100 | 100 |
West India | 100 | 20 |
غرب الولايات المتحدة | 100 | 100 |
West US 2 | 100 | 20 |
غرب الولايات المتحدة الأمريكية 3 | 100 | 20 |
لمزيد من المعلومات، راجع التوفر الإقليمي الكامل ل Azure Functions.