Az Azure Functions HTTP-eseményindítóinak és kötéseinek áttekintése
Az Azure Functions http-kérésekkel hívható meg kiszolgáló nélküli API-k létrehozásához és a webhookokra való válaszadáshoz.
Művelet | Típus |
---|---|
Függvény futtatása HTTP-kérelemből | Eseményindító |
HTTP-válasz visszaadása függvényből | Kimeneti kötés |
A bővítmény telepítése
A telepített NuGet-csomag a függvényalkalmazásban használt C# módtól függ:
A függvények izolált C# feldolgozói folyamatban futnak. További információ: Útmutató a C# Azure Functions izolált feldolgozói folyamatban való futtatásához.
A bővítmény funkciói a bővítmény verziójától függően változnak:
Adja hozzá a bővítményt a projekthez a NuGet-csomag 3.x-es verziójának telepítésével.
Feljegyzés
További bővítménycsomagra van szükség a .NET Izolált ASP.NET Core integrációjához
Csomag telepítése
A Functions 2.x-es verziójától kezdve a HTTP-bővítmény egy bővítménycsomag része, amely a host.json projektfájlban van megadva. További információkért tekintse meg a bővítménycsomagot.
host.json beállítások
Ez a szakasz a kötéshez elérhető konfigurációs beállításokat ismerteti a 2.x és újabb verziókban. A host.json fájl beállításai a függvényalkalmazás-példány összes függvényére vonatkoznak. Az alábbi példában host.json fájl csak a kötés 2.x+ verziójának beállításait tartalmazza. A függvényalkalmazások konfigurációs beállításairól a 2.x és újabb verziókban host.json Azure Functionsre vonatkozó hivatkozásban talál további információt.
Feljegyzés
A Host.json a Functions 1.x-ben az Azure Functions 1.x host.json referenciájában talál.
{
"extensions": {
"http": {
"routePrefix": "api",
"maxOutstandingRequests": 200,
"maxConcurrentRequests": 100,
"dynamicThrottlesEnabled": true,
"hsts": {
"isEnabled": true,
"maxAge": "10"
},
"customHeaders": {
"X-Content-Type-Options": "nosniff"
}
}
}
}
Tulajdonság | Alapértelmezett | Leírás | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
customHeaders | Nincs | Lehetővé teszi egyéni fejlécek beállítását a HTTP-válaszban. Az előző példa hozzáadja a X-Content-Type-Options fejlécet a válaszhoz, hogy elkerülje a tartalomtípus-sniffinget. Ez az egyéni fejléc a függvényalkalmazás összes HTTP-aktivált függvényére vonatkozik. |
||||||||||
dynamicThrottlesEnabled | igaz* | Ha engedélyezve van, ez a beállítás azt eredményezi, hogy a kérelemfeldolgozási folyamat rendszeres időközönként ellenőrzi a rendszer teljesítményszámlálóit, például connections/threads/processes/memory/cpu/etc ha bármelyik számláló egy beépített magas küszöbértéken (80%) van túl, a kéréseket a rendszer válaszsal 429 "Too Busy" elutasítja, amíg a számláló(k) vissza nem térnek a normál szintre.*A használatalapú csomagok alapértelmezett értéke a következő true : . A Prémium és dedikált csomagok alapértelmezett értéke a false . |
||||||||||
hsts | nincs engedélyezve | Ha isEnabled be van állítva true , a .NET Core HTTP Strict Transport Security (HSTS) viselkedése lesz kényszerítve az HstsOptions osztályban meghatározott módon. A fenti példa a maxAge tulajdonságot is 10 napra állítja. A támogatott tulajdonságok a hsts következők:
|
||||||||||
maxConcurrentRequests | 100* | A párhuzamosan végrehajtott HTTP-függvények maximális száma. Ez az érték lehetővé teszi az egyidejűség szabályozását, ami segíthet az erőforrások kihasználtságának kezelésében. Előfordulhat például, hogy egy HTTP-függvény nagy mennyiségű rendszererőforrást (memóriát/processzort/szoftvercsatornát) használ, ami problémákat okoz, ha az egyidejűség túl magas. Vagy rendelkezhet olyan függvénnyel, amely külső szolgáltatás felé irányuló kimenő kéréseket küld, és ezeknek a hívásoknak korlátozottnak kell lenniük. Ezekben az esetekben a szabályozás alkalmazása segíthet. *A használatalapú csomagok alapértelmezett értéke 100. A Prémium és dedikált csomagok alapértelmezett értéke a kötetlen ( -1 ). |
||||||||||
maxOutstandingRequests | 200* | Az adott időpontban lekérhető kérelmek maximális száma. Ez a korlát magában foglalja azokat a kérelmeket, amelyek várólistára kerülnek, de még nem kezdtek el végrehajtást végrehajtani, valamint a folyamatban lévő végrehajtásokat is. A korláton túli bejövő kérelmeket a rendszer 429 "Túl elfoglalt" válaszsal utasítja el. Ez lehetővé teszi a hívók számára, hogy időalapú újrapróbálkozásokra vonatkozó stratégiákat alkalmazzanak, és lehetővé teszik a kérelmek maximális késésének szabályozását is. Ez csak a parancsprogram-gazdagép végrehajtási útvonalán belüli sorba állítást szabályozza. Más várólisták (például az ASP.NET-kérésvárólista) továbbra is érvényben maradnak, és ez a beállítás nem érinti őket. *A használatalapú csomagok alapértelmezett értéke 200. A Prémium és dedikált csomagok alapértelmezett értéke a kötetlen ( -1 ). |
||||||||||
routePrefix | api | Az összes útvonalra érvényes útvonalelőtag. Az alapértelmezett előtag eltávolításához használjon üres sztringet. |