Asinchroniniai valdikliai ASP.NET MVC

Sukurkite asinchroninį valdiklį


Tradiciškai žiniatinklio programos srautas yra sinchroninis, tai yra, mes pateikiame užklausą serveriui ir sustojame, kol laukiame atsakymo, kol maždaug prieš 5 metus šis modelis galiojo, tačiau atsižvelgiant į naujus reikalavimus ir naujas priemones mums jau reikia kažko dinamiškesnio.
Asinchroninė programaAsinchroninė programa yra ta, kuri leidžia mums atlikti įvairias veiklas, kurios viena kitai netrukdo, ir kiekviena iš jų tariasi su kita dalimi prieš serverį, tuo pačiu išsaugodami dokumentą, galime ieškoti kito, nelaukdami atsakymo, tokio tipo programų pavyzdys yra „Gmail“, kur siunčiant el. laišką galime matyti gautuosius.
Šiame skyriuje pamatysime, kas yra asinchroninis valdiklis ir kaip jį sukurti naudojant ASP.NET MVC.
Vienas iš svarbiausių mūsų programų komponentų yra valdikliai ASP.NET MVC mes galime priversti juos veikti asinchroniškai, todėl galime užkirsti kelią procesų gedimui vykdant užklausą.

Siūlo užraktasNors dažniausiai šis užsikimšimas yra toks mažas, kad atrodo, kad vienu metu atliekami keli dalykai, yra atvejų, kai turime paruošti daug sunkesnį procesą ir tai blokuotų darbo giją taip, kad procesas badas, tai yra procesai, kurie taip ilgai laukia gijos, kad jie mirs.
Taip atsitinka todėl, kad serveris pradeda kaupti laukimo procesus ir ateina taškas, kai erdvė, kurią jis gali naudoti, perpildoma, todėl pamatysime, kad tokia populiari 503 paslaugos klaida nepasiekiama, kad to išvengtume, galime sukurti asinchroninis valdiklis, kuris nesumažina proceso paskutinio vykdymo laiko, tačiau atlaisvina apdorojimo giją, kad kiti procesai galėtų ją naudoti.
Kad mūsų valdytojas būtų asinchroninis, turime laikytis pagrindinės jo veiksmų struktūros, tokiu būdu galime pasiekti savo tikslą, nes turime laikytis kai kurių sistemos nustatytų konvencijų. Pažiūrėkime, ko mums reikia:
Asinchroninis veiksmasMes turime sukurti veiksmą savo valdiklyje, kuris turi žodį Async jo vardu taip pagal susitarimą ASP.NET MVC jūs žinosite, kas yra asinchroninis procesas. Pavyzdys gali būti SearchBooksAsyncBe to, šis veiksmas ar metodas turi būti grąžinimas negaliojantis.
Veiksmas baigtasTada turime sukurti veiksmą, kurį galėtume pavadinti, kai asinchroninis procesas bus baigtas, tam turime sukurti veiksmą, galintį sugrąžinti „ActionResult“, tam turime sukurti metodą su žodžiu Baigta jūsų vardu, pavyzdžiui: SearchBooksCompleted, tai mes jau turėsime būtinus pagrindinius elementus.
Kaip matome, mums nereikia daug, kad sukurtume asinchroninį valdiklį, visų pirma reikia patobulinti logiką ir šiek tiek laikytis konvencijų, kad sistema galėtų nustatyti, ką mes kuriame programoje. Asinchroninio programavimo pagrindai ASP.NET MVC Jie visai nesudėtingi, antroje šios pamokos dalyje, be kitų svarbių sąvokų, pamatysime išsamesnį pavyzdį, kaip sukurti asinchroninį valdiklį.
Ankstesnispuslapis 1 iš 2Kitas

Padėsite svetainės plėtrą, dalintis puslapį su draugais

wave wave wave wave wave