Prémium szintű Azure Functions-csomag

Az Azure Functions Elastic Premium csomag egy dinamikus skálázási üzemeltetési lehetőség a függvényalkalmazásokhoz. Az egyéb üzemeltetési tervekkel kapcsolatos lehetőségekért tekintse meg az üzemeltetési tervről szóló cikket.

Fontos

Az Azure Functions a Azure-alkalmazás szolgáltatásplatformon futtatható. Az App Service platformon a Prémium csomagfüggvény-alkalmazásokat futtató csomagokat Rugalmas Prémium csomagoknak nevezzük, olyan termékváltozatnevekkel, mint a EP1. Ha úgy dönt, hogy prémium csomagban futtatja a függvényalkalmazást, mindenképpen hozzon létre egy "E" kezdetű termékváltozatú csomagot, például EP1. Az App Service-csomag termékváltozatának nevei, amelyek "P"-vel kezdődnek, például P1V2 (Prémium V2 Kis csomag), valójában dedikált üzemeltetési csomagok. Mivel dedikáltak, és nem rugalmas prémium szintűek, a "P" kezdetű termékváltozatnevekkel rendelkező csomagok nem fognak dinamikusan skálázni, és növelhetik a költségeket.

A prémium csomag üzemeltetése a következő előnyöket nyújtja a funkciók számára:

A Prémium csomag használatakor az Azure Functions-gazdagép példányai a bejövő események száma alapján lesznek hozzáadva és eltávolítva, akárcsak a Használati csomag. Több függvényalkalmazás is üzembe helyezhető ugyanahhoz a Prémium csomaghoz, és a csomag lehetővé teszi a számítási példányok méretének, az alapcsomag méretének és a csomag maximális méretének konfigurálását.

Számlázás

A Prémium csomag számlázásának alapja a magmásodpercek száma és az összes példányon lefoglalt memória mennyisége. Ez a számlázás eltér a használati csomagtól, amely másodpercenkénti erőforrás-használat és -végrehajtás alapján kerül számlázásra. A Prémium csomaggal nincs végrehajtási díj. Ez a számlázás az aktív csomagonkénti minimális havi költséget eredményezi, függetlenül attól, hogy a függvény aktív vagy tétlen. Ne feledje, hogy a Prémium csomagban lévő összes függvényalkalmazás osztozik a lefoglalt példányokon. További információkért tekintse meg az Azure Functions díjszabási oldalát.

Feljegyzés

Minden prémium csomaghoz mindig legalább egy aktív (számlázott) példány tartozik.

Prémium csomag létrehozása

Amikor függvényalkalmazást hoz létre az Azure Portalon, a Használat csomag az alapértelmezett. Prémium csomagban futó függvényalkalmazás létrehozásához explicit módon létre kell hoznia vagy ki kell választania egy Azure Functions Premium üzemeltetési csomagot az Elastic Premium termékváltozatok egyikével. A létrehozott függvényalkalmazás ezután ebben a csomagban lesz üzemeltetve. Az Azure Portal megkönnyíti a Prémium csomag és a függvényalkalmazás egyidejű létrehozását. Ugyanabban a Prémium csomagban több függvényalkalmazást is futtathat, de mindkettőnek ugyanazon az operációs rendszeren (Windows vagy Linux) kell futnia.

Az alábbi cikkek bemutatják, hogyan hozhat létre programozott módon függvényalkalmazást prémium csomaggal:

Hidegindítások kiküszöbölése

Ha az események vagy végrehajtások nem fordulnak elő a használati tervben, az alkalmazás nulla példányra skálázható. Új események érkezésekor egy új példánynak, amelyen az alkalmazás fut, specializáltnak kell lennie. Az új példányok specializálása az alkalmazástól függően időt vesz igénybe. Ezt az extra késést az első hívásnál gyakran alkalmazás hidegindításnak nevezik.

A Prémium csomag két olyan funkciót biztosít, amelyek együttműködve hatékonyan kiküszöbölik a hidegindításokat a függvényekben: mindig kész példányok és előre előkészített példányok. A mindig készen álló példányok az előre áthelyezett példányok skálázással nem rendelkező kategóriái, és az előre elkészített példányok pufferként szolgálnak a HTTP-események miatt történő skálázás során.

Amikor az események elkezdik aktiválni az alkalmazást, a rendszer először a mindig kész példányokhoz irányítja őket. Amikor a függvény HTTP-események miatt aktívvá válik, a többi példány pufferként van felmelegítve. Ezeket a pufferelt példányokat előre előkészített példányoknak nevezzük. Ez a puffer csökkenti a skálázás során szükséges új példányok hidegindítását.

Mindig kész példányok

A Prémium csomagban az alkalmazás mindig készen áll egy adott számú példányra. Az alkalmazás a terheléstől függetlenül folyamatosan fut ezeken a példányokon. Ha a terhelés meghaladja azt, amit a mindig kész példányok kezelni tudnak, a rendszer szükség szerint további példányokat ad hozzá a megadott maximális értékig.

Ez az alkalmazásszintű beállítás a csomag minimális példányait is szabályozza. Tegyük fel például, hogy három függvényalkalmazást használ ugyanabban a Prémium csomagban. Ha két alkalmazás mindig készen áll egy példányszámra, egy harmadik példányban pedig ötre, akkor a teljes csomag minimális száma öt. Ez azoknak a példányoknak a minimális számát is tükrözi, amelyek esetében a csomag számlázása történik. Az alkalmazásonként támogatott mindig kész példányok maximális száma 20.

Az Azure Portalon konfigurálhatja a mindig kész példányok számát a függvényalkalmazás kiválasztásával, a Platformfunkciók lapra lépéssel, valamint a Vertikális felskálázási beállítások kiválasztásával. A függvényalkalmazás szerkesztési ablakában a mindig kész példányok az adott alkalmazásra vonatkoznak.

Rugalmas méretezési beállítások a portálon

Előre elkészített példányok

Az előre elkészített példányszám-beállítás pufferként melegíti a példányokat a HTTP-méretezési és aktiválási események során. Az előre elkészített példányok mindaddig pufferelnek, amíg el nem éri a maximális vertikális felskálázási korlátot. Az alapértelmezett előre elkészített példányszám 1, és a legtöbb forgatókönyv esetében ennek az értéknek 1-nek kell maradnia.

Fontolja meg egy kevésbé gyakori forgatókönyvet, például egy egyéni tárolóban futó alkalmazást. Mivel az egyéni tárolók hosszú bemelegítéssel rendelkeznek, érdemes lehet növelni az előre elkészített példányok pufferét. Az előre elkészített példányok csak az összes aktív példány használatbavétele után lesznek aktívak.

Az előmelegítési folyamat során futtatott bemelegítési eseményindítót is definiálhatja. A bemelegítési eseményindítóval előre betöltheti az egyéni függőségeket az előhívási folyamat során, így a függvények azonnal megkezdhetik a kérések feldolgozását. További információkért tekintse meg az Azure Functions bemelegítési eseményindítóját.

Tekintse meg ezt a példát arra, hogyan működnek együtt a mindig készen álló példányok és az előre elkészített példányok. A prémium szintű függvényalkalmazások két mindig készen álló példányt konfiguráltak, és egy előre elkészített példány alapértelmezett példányát.

Gráf felskálázása

  1. Ha az alkalmazás tétlen, és nincsenek eseményindítók, az alkalmazás ki van építve, és két példánnyal fut. Jelenleg a két mindig készen lévő példányért kell fizetnie, de az előre elkészített példányokért nem kell fizetnie, mivel nincs elővetített példány kiszámlázva.
  2. Amikor az alkalmazás elkezd HTTP-forgalmat fogadni, a kérések terhelése a két mindig készen lévő példány között oszlik el. Amint ez a két példány megkezdi az események feldolgozását, a rendszer hozzáad egy példányt az előre elkészített puffer kitöltéséhez. Az alkalmazás most három kiépített példánysal fut: a két mindig készen álló példánysal, valamint a harmadik előre elkészített és inaktív pufferrel. A három példányért díjat kell fizetnie.
  3. Ahogy a terhelés növekszik, és az alkalmazásnak több példányra van szüksége a HTTP-forgalom kezeléséhez, az előre elkészített példányt egy aktív példányra cseréli. A HTTP-terhelés most mind a három példányhoz lesz irányítva, és a rendszer azonnal kiépít egy negyedik példányt az előre elkészített puffer kitöltéséhez.
  4. A skálázás és az előmegjelenítés sorozata mindaddig folytatódik, amíg el nem éri az alkalmazás maximális példányszámát, vagy a terhelés csökken, ami miatt a platform egy időszak után visszaskálázódik. A maximálisnál nagyobb példányok nincsenek előre megadva vagy aktiválva.

A portálon nem módosíthatja az előre elkészített példányok számát, ehelyett az Azure CLI-t vagy az Azure PowerShellt kell használnia.

Függvényalkalmazás-példányok maximális száma

A csomag maximális kipukkadási száma mellett alkalmazásonkénti maximumot is konfigurálhat. Az alkalmazás maximális mérete az alkalmazásméretkorlát használatával konfigurálható. A maximális alkalmazáskiskálázási korlát nem haladhatja meg a csomag maximális kipukkadási példányait.

Privát hálózati kapcsolat

A Prémium csomagban üzembe helyezett függvényalkalmazások kihasználhatják a webalkalmazások virtuális hálózati integrációjának előnyeit. Ha konfigurálva van, az alkalmazás kommunikálhat a virtuális hálózaton belüli erőforrásokkal, vagy szolgáltatásvégpontokon keresztül biztonságossá teheti. Az alkalmazásban IP-korlátozások is elérhetők a bejövő forgalom korlátozásához.

Ha egy prémium csomagban hozzárendel egy alhálózatot a függvényalkalmazáshoz, szüksége lesz egy olyan alhálózatra, amely minden lehetséges példányhoz elegendő IP-címmel rendelkezik. Legalább 100 elérhető címmel rendelkező IP-blokkra van szükség.

További információ: függvényalkalmazás integrálása virtuális hálózattal.

Gyors rugalmas skálázás

A rendszer automatikusan több számítási példányt ad hozzá az alkalmazáshoz ugyanazzal a gyors skálázási logikával, mint a Használati csomag. Az ugyanabban az App Service-csomagban lévő alkalmazások egymástól függetlenül skálázhatók az egyes alkalmazások igényei alapján. Az ugyanabban az App Service-csomagban lévő Functions-alkalmazások azonban virtuálisgép-erőforrásokat osztanak meg a költségek csökkentése érdekében, ha lehetséges. A virtuális géphez társított alkalmazások száma az egyes alkalmazások lábnyomától és a virtuális gép méretétől függ.

A skálázás működésével kapcsolatos további információkért tekintse meg az eseményvezérelt skálázást az Azure Functionsben.

Hosszabb futtatási időtartam

A használati tervben lévő függvények egyetlen végrehajtás esetén legfeljebb 10 percig használhatók. A Premium-csomagban a futtatás időtartama alapértelmezés szerint 30 perc, hogy megakadályozza a futtatásos végrehajtásokat. A host.json konfigurációt azonban módosíthatja úgy, hogy az időtartam korlátlan legyen a Prémium csomagbeli alkalmazások esetében, az alábbi korlátozásokkal:

  • A platformfrissítések aktiválhatják a felügyelt leállítást, és leállíthatják a függvény végrehajtását.
  • A platformkimaradások kezeletlen leállítást okozhatnak, és leállíthatják a függvény végrehajtását.
  • Van egy tétlen időzítő, amely 60 perc után leállítja a feldolgozót új végrehajtás nélkül.
  • A méretezési viselkedés 60 perc után a feldolgozó leállását okozhatja.
  • A pontcserék megszakíthatják a végrehajtásokat a forráson és a célhelyeken a felcserélés során.

Migrálás

Ha rendelkezik egy meglévő függvényalkalmazással, az Azure CLI-parancsokkal migrálhatja az alkalmazást egy Használati csomag és egy Prémium szintű csomag között Windows rendszeren. Az egyes parancsok a migrálás irányától függenek. További információ: Migrálás megtervezve.

Ez a migrálás Linuxon nem támogatott.

Prémium csomag beállításai

A terv létrehozásakor két csomagméret-beállítás létezik: a példányok minimális száma (vagy a terv mérete) és a maximális kitörési korlát.

Ha az alkalmazásnak a mindig készen álló példányokon túli példányokra van szüksége, tovább skálázhatja a skálázást, amíg a példányok száma meg nem éri a csomag maximális kipukkadási korlátját, vagy ha konfigurálva van, az alkalmazás maximális vertikális felskálázási korlátja. A példányok számlázása csak akkor történik meg, ha azok futnak és ki vannak osztva Önnek másodpercenként. A platform minden tőle telhetőt megtesz annak érdekében, hogy az alkalmazást a megadott maximális korlátokra skálázhassa.

A csomag méretét és maximális méretét az Azure Portalon úgy konfigurálhatja, hogy az adott csomagra telepített függvényalkalmazás Gépház alatt a Vertikális felskálázási beállításokat választja.

Rugalmas csomagméret-beállítások a portálon

Minden Prémium csomag minimális értéke legalább egy példány. A példányok tényleges minimális számát a csomagban lévő alkalmazások által kért, mindig kész példányok alapján határozzuk meg. Ha például az A alkalmazás öt mindig kész példányt kér, és a B alkalmazás két mindig kész példányt kér ugyanabban a tervben, a minimális csomagméret ötként lesz meghatározva. Az A alkalmazás mind az öten fut, a B alkalmazás pedig csak a 2-en fut.

Fontos

A minimális példányszámban lefoglalt példányokért díjat számítunk fel, függetlenül attól, hogy a függvények futnak-e vagy sem.

A legtöbb esetben ez az automatikusan kiszámított minimum elegendő. A minimumon túli skálázás azonban a legjobb megoldás. Lehetséges, bár nem valószínű, hogy egy adott időpontban a vertikális felskálázás késhet, ha más példányok nem érhetők el. Az automatikusan kiszámított minimumnál magasabb minimum beállításával a példányokat a felskálázás előtt lefoglalhatja.

A minimális példányokat az Azure Portalon úgy konfigurálhatja, hogy az adott csomagban üzembe helyezett függvényalkalmazás Gépház alatt a Vertikális felskálázási beállításokat választja.

Minimális példánybeállítások a portálon

Elérhető példány-termékváltozatok

A csomag létrehozásakor vagy skálázásakor három példányméret közül választhat. A rendszer a kiosztott magok és memória teljes számát számítja fel másodpercenként, amelyet az egyes példányok kiosztanak Önnek. Az alkalmazás igény szerint automatikusan horizontálisan felskálázható több példányra.

Termékváltozat Cores Memory (Memória) Tárolás
EP1 0 3,5 GB 250 GB
EP2 2 7 GB 250 GB
EP3 4 14 GB 250 GB

Memóriahasználati szempontok

A több memóriával rendelkező gépen való futtatás nem mindig jelenti azt, hogy a függvényalkalmazás az összes rendelkezésre álló memóriát használja.

Egy JavaScript-függvényalkalmazást például a Node.js alapértelmezett memóriakorlátja korlátozza. A rögzített memóriakorlát növeléséhez adja hozzá az alkalmazásbeállítást languageWorkers:node:arguments a következő --max-old-space-size=<max memory in MB>értékkel: .

A 4 GB-nál több memóriával rendelkező csomagok esetében győződjön meg arról, hogy a Bitness Platform beállítása az Általános Gépház alatt van beállítva64 Bit.

Régió maximális vertikális felskálázása

Ezek a jelenleg támogatott maximális vertikális felskálázási értékek egyetlen csomaghoz az egyes régiókban és operációsrendszer-konfigurációkban:

Régió Windows Linux
Ausztrália középső régiója 100 20
Ausztrália 2. középső régiója 100 Nincs
Kelet-Ausztrália 100 40
Délkelet-Ausztrália 100 20
Dél-Brazília 100 20
Közép-Kanada 100 100
Közép-India 100 20
Az USA középső régiója 100 100
Kelet-Kína 2. régiója 100 20
Észak-Kína 2. régiója 100 20
Kelet-Ázsia 100 20
USA keleti régiója 100 100
USA 2. keleti régiója 100 100
Közép-Franciaország 100 60
Középnyugat-Németország 100 20
Izrael középső régiója 100 20
Észak-Olaszország 100 20
Kelet-Japán 100 20
Nyugat-Japán 100 20
Jio Nyugat-India 100 20
Dél-Korea középső régiója 100 20
Dél-Korea déli régiója 40 20
USA északi középső régiója 100 20
Észak-Európa 100 100
Kelet-Norvégia 100 20
Dél-Afrika északi régiója 100 20
Dél-Afrika nyugati régiója 20 20
USA déli középső régiója 100 100
Dél-India 100 Nincs
Délkelet-Ázsia 100 20
Észak-Svájc 100 20
Nyugat-Svájc 100 20
Egyesült Arab Emírségek északi régiója 100 20
Az Egyesült Királyság déli régiója 100 100
Az Egyesült Királyság nyugati régiója 100 20
USGov Arizona 100 20
USGov Texas 100 Nincs
USGov Virginia 100 20
USA nyugati középső régiója 100 20
Nyugat-Európa 100 100
Nyugat-India 100 20
USA nyugati régiója 100 100
USA 2. nyugati régiója 100 20
USA 3. nyugati régiója 100 20

További információkért tekintse meg az Azure Functions teljes regionális elérhetőségét.

Következő lépések