Asynchrone controllers in ASP.NET MVC

Bouw asynchrone controller


Traditioneel is de stroom van een webapplicatie: synchroon, dat wil zeggen, we doen een verzoek aan de server en we stoppen terwijl we wachten op het antwoord, tot ongeveer 5 jaar geleden was dit model geldig, maar met de nieuwe vereisten en de nieuwe tools hebben we al iets dynamischers nodig.
Asynchrone toepassingEen asynchrone applicatie is er een die ons in staat stelt om verschillende activiteiten uit te voeren die elkaar niet hinderen en elk een ander onderdeel tegen de server raadpleegt, hiermee kunnen we tijdens het opslaan van een document een ander raadplegen, zonder te hoeven wachten op een reactie, een voorbeeld van dit soort toepassingen is: Gmail, waar we tijdens het verzenden van een e-mail de inbox kunnen zien.
In deze sectie zullen we zien wat een asynchrone controller is en hoe deze te bouwen met behulp van ASP.NET MVC.
Een van de belangrijkste componenten van onze applicaties zijn de controllers, in ASP.NET MVC we kunnen ze asynchroon laten werken hiermee kunnen we voorkomen dat de processen crashen tijdens het uitvoeren van een query.

DraadvergrendelingHoewel deze blokkade meestal zo klein is dat het lijkt alsof er meerdere dingen tegelijkertijd worden gedaan, zijn er momenten waarop we een veel zwaarder proces moeten voorbereiden en het zou de werkdraad zodanig blokkeren dat het Proces honger, dat wil zeggen processen die zo lang op de draad wachten dat ze sterven.
Dit gebeurt omdat de server de wachtprocessen begint te stapelen en er een punt komt waarop de ruimte die hij kan gebruiken overloopt, hiermee zullen we zien dat de zo populaire 503-fout van service niet beschikbaar is, om dit te voorkomen kunnen we een asynchrone controller, wat de tijd dat het proces voor het laatst wordt uitgevoerd niet verkort, maar het maakt de verwerkingsthread vrij zodat andere processen het kunnen gebruiken.
Om onze controller asynchroon te laten zijn, moeten we voldoen aan een basisstructuur van zijn acties, op deze manier kunnen we ons doel bereiken, hiervoor moeten we enkele conventies volgen die door het raamwerk zijn vastgelegd. Laten we eens kijken wat we nodig hebben:
Asynchrone actieWe moeten een actie creëren binnen onze controller die het woord heeft: asynchrone in zijn naam dus volgens afspraak ASP.NET MVC u zult weten wat het asynchrone proces is. Een voorbeeld kan zijn: ZoekenBoekenAsync, bovendien moet deze actie of methode ongeldige teruggave.
Actie voltooidDan moeten we een actie maken die we kunnen aanroepen zodra het asynchrone proces is voltooid, hiervoor moeten we een actie maken die de terugkeer van de ActieResultaat, hiervoor moeten we een methode maken met het woord Voltooid namens u, zoals: ZoekenBoekenVoltooid, hiermee hebben we al de nodige basiselementen.
Zoals we kunnen zien, hebben we niet veel nodig om een ​​asynchrone controller te maken, het is vooral om de logica uit te werken en de conventies een beetje te volgen, zodat het raamwerk kan bepalen wat we in de applicatie bouwen. De basis van asynchroon programmeren in ASP.NET MVC Ze zijn helemaal niet ingewikkeld, in het tweede deel van deze tutorial zullen we naast andere belangrijke concepten een completer voorbeeld zien van hoe je een asynchrone controller kunt maken.
Vorigpagina 1 van 2Volgende

U zal helpen de ontwikkeling van de site, het delen van de pagina met je vrienden

wave wave wave wave wave