نظرة عامة على مشغلات HTTP وروابط البيانات في دالات Azure
قد يتم استدعاء دالات Azure عبر طلبات HTTP لإنشاء واجهات برمجة التطبيقات بلا خادم والاستجابة للإخطارات على الويب.
الإجراء | نوع |
---|---|
تشغيل دالة من طلب HTTP | المشغِّل |
إرجاع استجابة HTTP من دالة | ربط الإخراج |
تثبيت الملحق
تعتمد حزمة NuGet الملحق التي تقوم بتثبيتها على وضع C# الذي تستخدمه في تطبيق الوظائف:
يتم تنفيذ الوظائف في عملية عامل C# معزولة. لمعرفة المزيد، راجع دليل تشغيل وظائف C# Azure في عملية عامل معزولة.
تختلف وظيفة الملحق باختلاف إصدار الملحق:
أضف الملحق إلى مشروعك عن طريق تثبيت حزمة NuGet، الإصدار 3.x.
إشعار
هناك حاجة إلى حزمة ملحق إضافية لتكامل ASP.NET Core في .NET Isolated
تثبيت الحزمة
بدءاً من الإصدار 2.x من الوظائف، يعد ملحق HTTP جزءاً من حزمة الملحقات المحددة في ملف مشروع host.json الخاص بك. لمعرفة المزيد، راجع حزمة الإضافات.
من المفترض أن يكون هذا الإصدار من الإضافة متاحاً بالفعل لتطبيق وظيفتك باستخدام حزمة الإضافات، الإصدار 2.x.
إعدادات host.json
يصف هذا القسم إعدادات التكوين المتاحة لهذا الربط في الإصدارات 2.x وأعلى. تنطبق الإعدادات في ملف host.json على جميع الوظائف في مثيل تطبيق الوظائف. يحتوي مثال ملف host.json أدناه على إعدادات الإصدار 2.x + فقط لهذا الربط. للحصول على مزيدٍ من المعلومات عن إعدادات تكوين التطبيق الوظيفي في الإصدارات 2.x والإصدارات الأحدث، راجع مرجع host.json لوظائف Azure.
إشعار
للحصول على مرجع لـ host.json في دالات 1.x، راجع مرجع host.json لوظائفAzure 1.x.
{
"extensions": {
"http": {
"routePrefix": "api",
"maxOutstandingRequests": 200,
"maxConcurrentRequests": 100,
"dynamicThrottlesEnabled": true,
"hsts": {
"isEnabled": true,
"maxAge": "10"
},
"customHeaders": {
"X-Content-Type-Options": "nosniff"
}
}
}
}
الخاصية | Default | الوصف | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
customHeaders | لا شيء | يسمح لك بتعيين عناوين مخصصة في استجابة HTTP. يضيف المثال السابق X-Content-Type-Options العنوان إلى الاستجابة لتجنب التعرف على نوع المحتوى. ينطبق هذا العنوان المخصص على جميع وظائف HTTP المشغلة في تطبيق الوظائف. |
||||||||||
dynamicThrottlesEnabled | صحيح * | عند التمكين، يتسبب هذا الإعداد طلب معالجة البنية الأساسية لبرنامج ربط العمليات التجارية للفحص بشكل دوري لعدّاد الأداء النظام مثل connections/threads/processes/memory/cpu/etc وإذا تجاوز أي من هذه العدّادات حدًا مرتفعًا متضمنًا (80٪)، فسيتم رفض الطلبات مع 429 "Too Busy" استجابة حتى تعود العدّاد (العدّادات ) إلى المستويات العادية.*الافتراضي في خطة الاستهلاك هو true . الإعداد الافتراضي في الخطط المميزة والمخصصة هو false . |
||||||||||
hsts | لم يتم التمكين | عندما يتم تعين isEnabled إلى true ، يتم فرض سلوك HTTP Strict Transport Security (HSTS) NET Core كما هو محدد في HstsOptions فئة. المثال أعلاه أيضا يعيّنmaxAge الخاصية إلى 10 أيام. الخصائص المدعومة هي hsts :
|
||||||||||
maxConcurrentRequests | 100* | الحد الأقصى لعدد دالات HTTP التي يتم تنفيذها بالتوازي. تسمح لك هذه القيمة عنصر تحكم في التزامن، والذي يمكن أن يساعد في إدارة استخدام مورد. على سبيل المثال، قد يكون لديك دالة HTTP تستخدم عدد كبير من موارد النظام (memory/cpu/sockets) بحيث تتسبب في حدوث مشكلات عندما يكون التزامن مرتفعًا جدًا. أو قد يكون لديك دالة تقدم طلبات صادرة لخدمة جهة خارجية، ويجب أن تكون هذه الاتصالات محدودة التقييم. في هذه الحالات، يمكن أن يساعد استخدام تقييد هنا. *القيمة الافتراضية لخطة استهلاك هو 100. الإعداد الافتراضي للخطط المميزة والمخصصة غير مقيد ( -1 ). |
||||||||||
maxOutstandingRequests | 200* | الحد الأقصى لعدد الطلبات المعلقة التي يتم الاحتفاظ بها في أي وقت. يتضمن هذا الحد الطلبات التي تم وضعها في قائمة الانتظار ولكن لم يتم بدء تنفيذها، بالإضافة إلى أي عمليات تنفيذ قيد التقدم. يتم رفض أي طلبات واردة تتجاوز هذا الحد باستجابة 429 "مشغول للغاية". يسمح ذلك للمتصلين باستخدام استراتيجيات إعادة المحاولة المستندة إلى الوقت، ويساعدك أيضًا على عنصر تحكم في الحد الأقصى من أزمنة انتقال الطلب. يتحكم هذا فقط في قائمة الانتظار التي تحدث ضمن مسار تنفيذ مضيف البرنامج النصي. ستظل قوائم الانتظار الأخرى مثل قائمة الانتظار طلب ASP.NET سارية ولن تتأثر بهذا الإعداد. *الافتراضي لخطة استهلاك هو 200. الإعداد الافتراضي للخطط المميزة والمخصصة غير مقيد ( -1 ). |
||||||||||
routePrefix | واجهة برمجة التطبيقات | بادئة المسار التي تنطبق على كافة المسارات. استخدم سلسلة فارغة ليزيل البادئة الافتراضية. |