NetAcademia

A legjobbakat tanítjuk!

Egy ASP.NET MVC/Azure teljesítményvizsgálat rövid története

2016. október 24. 10:04 - Plesz Gábor

Egy ASP.NET MVC optimalizálás története az Azure-on

A NetAcademia weboldala, a netacademia.hu hosszú ideje egy virtuális gépen futott az Azure-ban. Idén elhatároztuk, hogy átköltöztetjük egy webalkalazásra. A költözés rendben lezajlott, és nem is vettünk észre semmi különöset. Aztán érkezett egy nagyobb, de nem igazán nagy terhelés az oldalra, és az oldalunk válaszideje felment egy perc körüli értékekre, gyakorlatilag használhatatlanná vált. Alkalmazásunk jól skálázható, így további szervereket üzembeállítva (vertikális skálázással) viszonylag gyorsan visszaállítottuk a használhatóságot, de a helyzet nem volt megnyugtató. Egy gyors felülvizsgálat mellett döntöttünk.

#CACHE

Az első dolog, ami gyanús volt, az az, hogy a ritkán használt oldalak nagyon lassan töltődtek be, azonban ha egyszer betöltöttük, utána már viszonylag gyorsan bejött újra. Ez a jelenség cache problémára utalt. Mivel az oldal terhelése nem folyamatos, ezért lehetnek 10-20-30 percek, amikor egy oldalt sem töltenek le a látogatók. Ilyenkor az Azure törli az alkalmazást a futtató szerver memóriájából, és csak akkor tölti be ismét, ha újabb kérés érkezik. Mivel a cache-t intenzíven használjuk a gyorsabb válaszidő érdekében, és ilyenkor a nulláról kell felépíteni a gyorsítótárat, ezt nem engedhetjük. így mikor átköltöztünk, akkor a mindig bekapcsolva (Always On) kapcsolót beállítottuk.

Természetesen az ördög ilyenkor ahelyett, hogy aludna, kipattan az ágyból. Ellenőriztük hát ismét, és sajnos azt találtuk, hogy ki van kapcsolva. Talán amikor az automatikus buildet és a telepítési slot-okat állítottuk be valamit elnyomtunk, mivel nem powershell scriptekkel, hanem kattingatásos módszerrel dolgoztunk. Ezzel az egyik rejtélynek sikerült utánajárni.

De ha már elindultunk ezen az úton egy kicsit még nézelődtünk.

#SESSION STATE BLOCKING

Mivel az általános cache beállítások legalább fél óráig nem ürítik a gyorsítótárat, így a terhelés miatti lassulás ezzel a kapcsolóval nem magyarázható.

Ellenőriztük hát a böngészőben az oldalletöltés menetét, és egy ilyet találtunk:

Itt van öt kérés, ami valahogy sokkal tovább tart, mint kéne neki. Ezek oldallekérések, és ha egyesével hívjuk őket, akkor 6-800ms alatt mindegyik véget ér, de ha az oldalról hívjuk valahogy mindig van egy nagyon komoly késleltetés.

Telepítettük a Glimpse nevű remek eszközt, és megnéztük, hogy a kérés ami 3 másodpercig tart, vajon merre jár eközben:

Azt találtuk, hogy a világon semmit nem csinál az idő 90%-ban, csak vár. Majd gyorsan elvégzi a dolgát.

Ekkor már meglehetőse gyanús lett a dolog, hogy olyan, mintha a szerver a párhuzamos kéréseket nem szolgálná ki párhuzamosan, hiába teszünk az oldalra ajax kérést, ami elvileg párhuzamosan a háttérben végrehajtódik, a valóságban úgy tűnik, szépen kivárja a sorát, és csak, ha sorrakerül, akkor válaszol.

Ez pedig az ASP.NET skálázhatóságának Achilles sarkára irányította figyelmünket: ASession State Blocking-ra. Arról van szó, hogy egy kérés során lehetőségünk van a Session nevű helyre adatokat írni. Ez a session egy felhasználóhoz tartozik, tehát akár megtehetjük azt is, hogy két oldalletöltés között egy-egy felhasználónak átmeneti információit rögzítjük. Például az előző oldal adatait, ha éppen szükségünk lenne rá.

Nos, NE TEGYÜK! Ugyanis az ASP.NET MVC alapértelmezésben ezt úgy oldja meg, hogy lock-ot tesz erre a Session nevű tárolóra, így egy felhasználótól csak egy kérés fér egyszerre hozzá. Ezért az azonos felhasználótól érkező kérések szépen sorbaállnak, és egymás után hajtódnak végre.

Nesze neked skálázhatóság, ahogy Marcell mondaná.

Hát, mi Sessionban nem tárolunk, mivel a Session használata házo belül tiltólistán van. Ha egy adatnak két kérés között meg kell maradnia, akkor az a perzisztens adat. És mint ilyennek, az adatbázisban a helye.

Jó. De akkor miért történik mégis ez velünk?

Hát nem elég nem használni ezt a Session-t, erről értesíteni is kell a az MVC keretrendszert, a megfelelő kontrollert dekorálni kell egy erre való attribútummal. Például így, elég, ha szólunk, hogy nem akarunk módosítani a Session állapotán, és kész.

[SessionState(System.Web.SessionState.SessionStateBehavior.ReadOnly)]
public class CalendarController : Controller
{
...
}

Na ez maradt le két kontrolleren valahogy. Miután pótoltuk, változott a helyzet:

#REQUEST PIPELINE

Itt még mindig indoklást kíván, hogy vajon mi az, ami 600ms-ig tart, hiszen egy cache-elt válaszról beszélünk, ez az idő rengeteg, azért.

Gyorsan belenéztünk a Glimpse-sel ismét, hátha elkerülte valami a figyelmünket.

Itt egy olyan filtert látunk, ami minden kérésre lefut, és az egyes kérések alatt 100-300ms-ot használ. Tekintettel arra, hogy a most vizsgált oldalakon nincs rá szükség, gyorsan kiiktattuk. Most ez a helyzet:

Ez még mindig nem a Forma 1 sebesség, de már használható. Nem feledjük el, hogy ez csak egy gyors vizsgálat, nem töltünk napokat az optimalizálással, hanem max egy nap alatt a legnagyobb hibákat megszüntetjük.

Most persze lehetne elmélyülni az egyes kérések lelkivilágában, illetve a cache-t gyorsítani, illetve megvizsgálni, hogy a rengeteg javascript és css állományt hogyan tudnánk minél kevesebb kérésbe szervezni, és CDN-re tenni statikus állományokat - de ezek a következő menetben kerülnek sorra.

Cserében, mielőtt elégedetten hátradőlnénk, azért egy load tesztet elvégzünk, hogy megnézzük, hogy változik a felhasználószám növekedésével az oldalunkat kiszolgáló szerver terhelése.

#LOAD TEST

Ehhez a legegyszerűbb regisztrálni a VSTS-en (Visual Studio Team Services)-on, és itt (sok minden más mellett) 25000 felhasználópercet kapunk ingyen. Csak kell egy jó teszt, de ezt viszonylag egyszerűen össze tudjuk hozni:

  1. Készítünk egy HTTP archív állományt.

Én Chrome-ot használtam. Ehhez előhívtam a Developer tools ablakot F12-vel, és a naplóállomány megtartását bekapcsoltam a Network fülön.

Majd néhány lépést tettem a teszthez a következő kombóban: főoldal->bejelentkezés->tanfolyami oldal->tanfolyam->kijelentkezés. Ezután jobb egérgomb a napló valamelyik során, és a Save as HAR with content menüpontot választom.

  1. A VSTS projektemben load testet készítek

Elmegyek a Load Testekhez, és letrehozok egy újat, méghozzá HTTP Archive based test-et, ahova feltöltöm az előbb létrehozott állományomat. Majd átváltok a beállításokra,

és beállítok egy olyan 5 perces tesztet, ahol 60 felhasználóval indulok, és 15 másodpercenként hozzáadok 60 felhasználót. Így eljutok 1000-ig, ahol a felhasználószám növelésben megállok.

Elindítom a tesztet, majd miután lefut, láthatom a teszteredményből, hogy alkalmazásunk rendes válaszidővel elérhető maradt:

Gyorsan megnézzük még, hogy mindeközben az Azure-on:

Szemmel láthatóan megterheltük a szervert, de nem terheltük túl:

És mivel ez egy szerveren így néz ki, és skálázódunk terhelés alapján legfeljebb 10 node-ig, az alkalmazásunk a napi terhelést bírni fogja.

https://gplesz.github.io/ASP.NET-opt/

 

Szólj hozzá!

Egypercesek

2016. október 20. 13:04 - Ozga Linda

Motivációs gázfröccs a Minek ez nekem? kérdésre összpontosítva

Azt vettük észre, hogy a fenti kérdés megválaszolása előtt a meg nem értés akadályába ütközik a döntéshozatal, ami az előfizetés-vásárlást illeti. Szerintünk kell ide egy-két olyan infó, aminek a birtokában kézremegés nélkül, és a jó döntés teljes tudatában kerülhetnek előfizetések a képzeletbeli kosarakba.

Ezért döntöttünk úgy, hogy megírjuk örkényi egyperceseinket, melyek reméljük, talán további kérdéseket vethetnek fel. Ha igen, akkor alább, kommentben indulhat a licit. A legtöbbször feltett kérdés újabb egypercest ihlethet meg. 

---
Mit is veszek meg?
Avagy fele királyságunk és más

Első egypercesünkben lerántjuk a leplet arról, mit is tartalmaz egész pontosan az előfizetés.

Dobpergés...

Mindent.

Bővebben?

A háromféle előfizetés háromféle mindent tartalmaz:

    1. IT Factory előfizetés (150 000 Ft+Áfa/fő): Az ÖSSZES eddig lezajlott, immár videós formában elérhető tanfolyamot a Korábbi tanfolyamok menüpontból ÉS az összes, ezután induló tanfolyamot az IT Factory naptárából.
    2. NetAcademia előfizetés (200 000 Ft+Áfa/fő): A NetAcademia naptárban szereplő ÖSSZES tanfolyamot.
    3. NetAcademia Ultimate előfizetés (300 000 Ft+Áfa/fő): 1. + 2. azaz AZ ÉGADTA VILÁGON MINDENT!


Mit jelent ez pontosan?

A megvásárolt előfizetés lehetővé teszi, hogy szabadon válogass a tanfolyamok között. Tanteremben is részt vehetsz rajtuk, és élőben, online is követheted őket. Az online közvetítésről készült videókat korlátlanul visszanézheted bárhol, bármikor, tehát nem kell attól tartanod, hogy bármiről is lemaradsz. Ha már elvégeztél egy adott tanfolyamot egyszer tantermi hallgatóként, akkor sem gátol meg semmi abban, hogy a legközelebbi alkalommal újra elgyere, és a videók segítségével annyit gyakorolhatsz, amennyit csak akarsz.

Szólj hozzá!

Hogyan telepítsünk szoftvert? (Ahogy a nagyok csinálják.)

2016. október 12. 05:00 - Plesz Gábor

Zach Holman egy jelenség. A 9. munkatársa volt a GitHubnak, ott dolgozott, amíg 5 év alatt nőttek 250 alkalmazottal rendelkező vállalattá, majd kirúgták. Rengeteg remek cikket írt, például a távozásáról is írt egy visszatekintést az előző mellé. Ilyenre azért elég kevesen képesek, azt hiszem már ebből is látszik, méltó a figyelemre.

A napokban egy olyan cikke jött szembe velem, ami szoftver telepítésről szól, amolyan 21. századi módra. Figyelem, részletes cikk következik. Itt a tartalomjegyzék:

  1. Célok

    A telepítés az nem egy megoldott probléma?

  2. Előkészületek

    Kezdd az előkészületeket azzal, hogy végiggondolod a teszteléssel, a funkciók ki és bekapcsolásával és egyáltalán, a közös forráskódon való munkával járó dolgokat.

  3. Kódtár elágaztatás (Branching)

    A kódod elágaztatása alapvető része a telepítésnek. Ki akarsz zárni minden lehetséges nem kívánt következményt, amit az egyre újabb és újabb fejlesztési lépések okozhatnak. Kezdj el gondolkozni az eltérő megközelítéseken, amit a kódelágaztatás, a főágból végzett automatikus telepítés és a kék/zöld telepítés lehetővé tesznek.

  4. Vezérlés

    A telepítés lelke. Hogy tudod irányításod alatt tartani a elkészült kódot? Kezelj különböző jogosultsági struktúrákat a kódegyesítéssel (merge) és telepítéssel kapcsolatosan, fejlessz ellenőrzési védvonalat minden telepítéshez, végül tégy rendet telepítési zárakkal és telepítési várakozó sorokkal.

  5. Felügyelet

    Vagány, a kód kinn van. Most már bosszankodhatsz a különböző monitoring nézőpontokon, gyűjthetsz telemetriát bizonyítéknak, végül meghozhatod a döntést: visszavond vagy ne a módosításokat?

  6. Tapasztalat

    "Palmer, mit is tanultunk?"
    "Nem tudom Uram."
    "Rohadtul nem tudom én sem. Azt hiszem az tanultuk, hogy ezt ne tegyük meg újra."
    "Igen, Uram."

Zach Holman: Deploying Software

Szólj hozzá!

Online online oktatás

2016. október 10. 13:19 - Barcsi Tamás (NetAcademia)

Hát… Most biztos arra gondolsz, hogy „nyomdai hiba” van a címben, és véletlenül kétszer szerepel benne az Online szó. Pedig szándékos. De, hogy kiderüljön, miért is van így, egy kis háttérinfóval kezdeném.

A nyár végi „Nagy Bumm” a NetAcademia és az ITFactory nyilvánosan is kimondott házassága volt. Új tervek, új konstrukciók, mindenki számára elérhető IT képzések délelőtt és délután egyaránt. Az előfizetéses rendszer bevezetése mindkét brandbe igen jó ötletnek tűnik, a tanulásnak innentől már csak az akarat szab határt, azaz, ha TE nem akarod. Egyébként, ha nem tudod, hogy miről is zagyválok, akkor nézd csak meg a www.netacademia.hu oldalt.

A történet azért érdekes, mert az ITFactory (volt) az, ami jobban az online oktatás/tanulás szülőanyja (volt). Időnként a NetAcademia képzéseken is volt 1-1 online hallgató, azonban a legtöbb esetben a 40 órás képzéseket tantermi környezetben végezték el a hallgatók. Az összeolvadás, valamint a pénzügyi és adminisztrációs keretek, terhek drasztikus csökkentése után azonban úgy néz ki, hogy a NetAcademia hallgatói is szívesebben választják az online formátumot. Nagy valószínűséggel, mert kényelmes, mert visszanézhető és, mert nem akarnak lemaradni semmiről.

Olyannyira igaz ez, hogy a legutóbbi Windows Server hálózati szolgáltatások tanfolyamomon (http://www.netacademia.hu/winsernet) már csak online hallgatókkal találkoztam. Ez egy rutintalan oktatónak igen nagy kihívás, amikor „senki” sincs a tanteremben, mindenki csak a chaten elérhető virtuális formában. Mivel már egy jól bejáratott, saját rendszerrel rendelkezünk az online oktatás terén, ezért a mi oktatóinknak egyáltalán nem jelent problémát, ha ugyanazt az anyagot kell leadni, mint korábban, csak most egy (web)kamerának kell beszélni. Így történt ez velem is, és mivel jó pár tanfolyamot, oktatóvideót készítettem már korábban is ilyen formában (bár ez utóbbi szerkesztett formában jelent meg), egyáltalán nem gondoltam azt, hogy bármivel is rosszabbul kéne éreznem magam azért, mert most élő ugyan, de egyedül leszek a „tanteremben”. És ekkor jött a kósza gondolat, hogy ha már úgysincs senki fizikailag valamelyik NetAcademia teremben, akkor én miért is ne tarthatnám meg otthonról, a saját környezetemben a tanfolyamot? Gyakorlatilag máskor is volt már példa rá, hogy egy kolléga az egyik délutáni ITFactorys alkalmat otthonról tartotta meg, illetve a legutóbb Fóti Marcell is a kőröshegyi Völgyhíd kávézóból jelentkezett be, és adta elő a tudnivalókat a Titkosítási ABC tanfolyamához (http://netacademia.hu/Titkositas-titkositasi-abc), ami egyébként minden hónap elsején ugyanúgy megrendezésre kerül, a helyszín pedig legyen titkos, viszont a tréning teljesen ingyenes! (Ha még most sem tudod, hogy mit is rejt az előfizetés, és még mindig nem kattintottál rá a fent említett linkre, akkor az a rossz hírem, hogy ezt más, helyetted nem fogja tudni megcsinálni, úgyhogy rajta! :) )

Az "home-train" ötlete látszólag jó, elsőre egyszerű kivitelezni is. Végülis csak egy picivel több a követelmény, mint a hallgatói oldalon. Hiszen, aki online üli végig a képzést, és halad az oktatóval, annak is szüksége van olyan infrastruktúrára, ami bírja is a „terhelést”. Az oktatói „picivel több” az végülis meg is van: Kell egy webkamera, és kész. Itthon van egy frankó dolgozószobám, amibe nemrég alakíttattam át az asztalom, hogy ergonómikusabb legyen, kényelmes magasságban a 3 monitorom, amit használok, jó nagy asztalfelülettel.

 wp_20160930_002.jpg

Na igen, a 3 monitor néha kevés is. Mondjuk oktatáshoz ideális: 1 monitor, amit a hallgatók is látnak, 1 a visszanézőnek, chat-nek, 1 meg jó, ha mondjuk a jegyzetembe, vagy a saját előadásmenetembe kellene belekukkantani (merthogy PPT az tilos továbbra is, nem hiányzik, hogy a hallgatóság elaludjon, lefejelje a billentyűzetet, és a chatet véletlenszerű karakterekkel szórja tele, olyanokkal, amikre éppen a feje esett). Mivel alapvetően rendszergazdáknak szóló tanfolyamokat tartok, ezért az erőforrás sem árt.

eroforras.JPG

Nos, ezzel le is tudtuk a technikai részt, kezdődhet a tanfolyam. Nosza, próbáljunk egyet, hogy vajon hogyan is fog ez kinézni a gyakorlatban.  Az első próbavideókban a webkamera minőségét, láthatóságát próbáltam. Ezeket a felvételeket a NetAcademia csapatának is elküldtem. Gyorsan rám is szóltak, hogy szép a piros háttér, meg az iroda feeling, de azért az mégsem annyira frankó, ha az éles tanfolyam is ilyen lesz. (Azért itt megjegyezném, hogy az valójában nem is piros, hanem ázsiai liliom, mondjuk erről színről nekem sem volt egészen addig fogalmam, amíg ki nem találtuk pár évvel ezelőtt, hogy ilyen lesz a …. (szobám, irodám, dolgozó helyiségem) (megfelelő rész aláhúzandó)).

Még jó, hogy van NetAcademiás, céges rollup, úgyhogy egy cirka 2 órás feng shuival meg is oldottam, hogy ez kevésbé látszódjon. Aztán jött a fény kérdése. Mivel az irodában egy tetőablak van, az is tőlem balra, ezért a webkamera mindent szépen mutatott, csak én nem látszódtam megfelelően. Ami mondjuk egy kicsit sem zavaró, hiszen ismerjük a mondást: A férfin mindegy, hogy mi van, a lényeg, hogy mit mond. (A nőknél meg az van, hogy mindegy, hogy mit mond, a lényeg, hogy mi van rajta. De én ezt a szállóigét sem megerősíteni, sem megcáfolni nem tudom). Újabb 2 órás feng shui, egy kis világítástechnikával kiegészítve. Ablak sötétítés, fotós lámpa, derítővel a megfelelő szögben, és kész. „Ennyi” az egész, jöhet a tanfolyam.

wp_20160930_001.jpg

A NetAcademia egyik alapszabálya, hogy nem "kormányablak ügyintézői üzemmódban" működünk. (Azaz, ha 9-kor kezdünk, akkor nem 9.10-kor kapcsoljuk be a gépet, és nem akkor derül ki, hogy gyakorlatilag a rendszer nem is működik). Már egy fél órával a kezdés előtt el is indítottam a broadcastot, hogy a korán érkező hallgatók ne érezzék magukat egyedül. És hogy ne síri csend legyen, háttérzeneként egy magyar, funkyt játszó rádiót választottam (amit azt hiszem, hogy legközelebb is használni fogok, mert jó ötletnek tűnik jó zenékkel indítani a napot, illetve kitölteni a szüneteket).

Azért gondolkodtam backupon: Laptop, ha esetleg lefagyna a gépem a közvetítéssel, és mindennel együtt, legalább tudjak szólni a chaten, hogy „Houston, baj van”. Még a skype-omat is beindítottam, megadtam a hallgatóságnak, hogy ha nagyon nagy gáz van, akkor ott is el tudjanak érni (azta, 3 monitor, plusz gép, plusz szkájp, még jó, hogy dobolni is tanulok, legalább ennyi helyre könnyen lehet figyelni).

wp_20160930_004.jpg

Na, már tényleg semmi sem állhat az utamba (Ja, de. Az áram, és az Internet szolgáltatóm, de azok olyanok, mint a tanteremben, hiszen a Kazinczy utcában is bármikor  „elmarkolhatják” az optikát, és akkor meg teljesen mindegy, hogy honnan streameled a tanfolyamod). Egyébként, ha már szóba került az Internet szolgáltató. Egy hallgató szólt, hogy akadozik a stream. Gyorsan néztem egy speedtestet, és ekkor derült ki a számomra is, hogy gyorsabb a netkapcsolatom, mint amit én gondoltam.

350c1be460f6d6fe1fda26761dd27bc9.png

Mondjuk így rögtön kiderült, hogy ebédszünetben azért jó egyszer újraindítani az elfáradt közvetítő rendszert, hogy délután is ugyanolyan minőségű legyen az online kapcsolat, mint addig volt.

A tanfolyam sikeresen elindult. Kicsit úgy érezhettem magam, mint Szellő István az RTL híradóban. Ő mesélte egyszer, hogy a reflektorfények kereszttüzében annyira baromira meleg van, hogy a business formal viselet csak a felső részére igaz, valójában alul fecske-zokni-szandálban dolgoznak. (Nade az előbb mondtam már, hogy a férfin mindegy, hogy mi van, ráadásul a hírmondók alsó viseletéről szóló legendákat sem tudom megerősíteni, de még megcáfolni sem).

Az első óra után egy meglepetés vendégoktató is érkezett, őt egyszerűen csak Murphynek hívják. Ő azt mondta, hogy SSD Stop, és indítsd újra a gépet. Valójában örültem is neki, hogy végre újra láthattam a „Bootmgr is missing” üzenetet. A csávó amúgy aznap mégegyszer nyomott egy stop-ot az SSD-re. Ilyenkor újra a szép hibaüzenetet láthattam, valamint a két le nem zárt videót is megjavíthattam, amivel így egy kicsit elcsúsztam, de másnapra fel volt töltve minden (Ez amúgy egy fontos dolog, hiszen a hallgatók vissza szeretnék nézni, ezért hiányolni fogják, most miért üljünk rajta napokig?). Tényleg hálás vagyok neki, mert így nem megyek ki a videófájl javítás hogysmintjéből. Murphy amúgy beköszönt még az utolsó nap is, pontban 9-kor (amikor éppen indult volna a nap). Kezdtem magam kormányablak ügyintézőnek érezni, de gyorsan megoldottam a problémát, így simán lezajlott minden. (Azért Murphy mégsem az SSD-t állította meg, hanem valahogy a tápegységemből zavarta el az Ampereket, de ez egy másik történet).

Összefoglalva, én jól éreztem magam online, ha legközelebb is csak „éter hallgatók” lesznek, akkor újra felépítem a „stúdióm”, most viszont már elég lesz egy 5 perces feng shui hozzá. Remélem a hallgatók is meg voltak elégedve az oktatás tartalmi, szakmai színvonalával. Elvégre mindegy, hogy mi van a… ööö mindegy, hogy honnan tartom a tanfolyamot. :) 

online.JPG

Szólj hozzá!

Egy jó eszköz a szerver nélküli informatikához: Azure Functions

2016. október 10. 05:00 - Plesz Gábor

"Van itt néhány zavaró fogalom a Felhővilágból. És akkor még a 'Felhő' fogalmát nem is számoltuk ;)

  • IaaS (Infrastruktúra mint szolgáltatás) - Virtuális gépek és dolgok igény szerint.
  • PaaS (Platform mint szolgáltatás) - Telepíted a saját alkalmazásaidat, de megpróbálsz a háttérben szolgáló virtuális gépekre nem gondolni. Léteznek, de amíg nem vagyunk kénytelenek, úgy teszünk, mintha nem lennének.
  • SaaS (Alkalmazás mint szolgáltatás) - Dolgok, mint az Office 365 és a Gmail. Előfizetsz, és megkapot az e-mail-t/akármit mint szolgáltatást. Egyszerűen működik.

A "Szerver nélküli számítástechnika" igazából nem azt jelenti, hogy nincs szerver. A Szerver nélküliség azt jelenti, hogy nincs olyan szerver, amiért Neked aggódnod kéne. Olyan mint a PaaS, csak magasabb szinten.

A szerver nélküli számítástechnika ilyen - A kódod, csúszka, és a hitelkártyád. Csak ki kell ide raknod a függvényedet, és egészen addig fog skálázódni, amíg a hitelkártyád bírja. Ez kb. annyira 'felhős', amennyire csak A Felhő képes rá."

Az Azure Functions segítségével nincs szükség "rendes" alkalmazásfejlesztésre. Érkezik egy kérés, a megfelelő paraméterekkel, és egy feladatot elvégzünk.

Scott Hanselman: What is Serverless Computing? Exploring Azure Functions

Troy Hunt: Azure Functions in practice

5 komment

Funkciók be- és kikapcsolása fejlesztési minták a gyakorlatban

2016. október 07. 05:00 - Plesz Gábor

Korábban már volt hivatkozva egy szép hosszú cikk erről itt a blogon, és egy nuget is előkerült. Ez a cikk most bepillantást nyújt arról, hogy a vsts csapat hogy használja a mindennapi fejlesztésben.

Controlling exposure through feature flags in VS Team Services

Szólj hozzá!
süti beállítások módosítása