Asynkrona kontroller i ASP.NET MVC

Innehållsförteckning

Bygg asynkron styrenhet


Traditionellt är flödet av en webbapplikation synkron, det vill säga, vi gör en förfrågan till servern och vi stannar medan vi väntar på svaret, för ungefär 5 år sedan var denna modell giltig, men med de nya kraven och de nya verktygen behöver vi redan något mer dynamiskt.
Asynkron applikationEn asynkron applikation är en som tillåter oss att utföra olika aktiviteter som inte stör varandra och var och en konsulterar en annan del mot servern, med detta samtidigt som vi sparar ett dokument kan vi konsultera en annan, utan att behöva vänta på svar, ett exempel på denna typ av applikationer är Gmail, där vi kan se inkorgen när vi skickar ett e -postmeddelande.
I det här avsnittet kommer vi att se vad en asynkron kontroller är och hur man bygger den med ASP.NET MVC.
En av de viktigaste komponenterna i våra applikationer är styrenheterna i ASP.NET MVC vi kan få dem att fungera asynkront med detta vi kan förhindra att processerna kraschar medan du gör en fråga.

GänglåsÄven om blockeringen för det mesta är så liten att det verkar som att flera saker görs samtidigt, finns det tillfällen då vi måste förbereda en mycket tyngre process och det skulle blockera arbetstråden på ett sådant sätt att processen svält, det vill säga processer som väntar på tråden så länge att de dör.
Detta inträffar eftersom servern börjar stapla väntprocesserna och det kommer en punkt där utrymmet den kan använda överflödar, med detta kommer vi att se det så populära 503 -servicefelet inte tillgängligt, för att undvika detta kan vi skapa ett asynkron styrenhet, vilket inte minskar tiden som processen kommer att köras, men det frigör bearbetningstråden så att andra processer kan använda den.
För att vår controller ska vara asynkron måste vi följa en grundstruktur för dess handlingar, på detta sätt kan vi uppnå vårt mål, för detta måste vi följa vissa konventioner som fastställts av ramverket. Låt oss se vad vi behöver:
Asynkron åtgärdVi måste skapa en handling inom vår controller som har ordet Asynk i hans namn så enligt konvention ASP.NET MVC du kommer att veta vad den asynkrona processen är. Ett exempel kan vara SökböckerAsynk, dessutom måste denna åtgärd eller metod återge ogiltigt.
Åtgärden avslutadSedan måste vi skapa en åtgärd som vi kan kalla när den asynkrona processen har slutförts, för detta måste vi skapa en åtgärd som kan hantera återkomsten av ActionResult, för detta måste vi skapa en metod med ordet Avslutad å dina vägnar, till exempel: SearchBooksCompleted, med detta kommer vi redan att ha de nödvändiga grundelementen.
Som vi kan se behöver vi inte mycket för att skapa en asynkron styrenhet, framför allt är det att utarbeta logiken och följa konventionerna lite så att ramverket kan avgöra vad vi bygger i applikationen. Grunderna i asynkron programmering i ASP.NET MVC De är inte komplexa alls, i den andra delen av denna handledning kommer vi att se ett mer fullständigt exempel på hur man skapar en asynkron kontroller utöver andra viktiga koncept.
Tidigaresida 1 av 2Nästa

Du kommer att bidra till utvecklingen av webbplatsen, dela sidan med dina vänner

wave wave wave wave wave