Kontrolery asynchroniczne w ASP.NET MVC

Zbuduj kontroler asynchroniczny


Tradycyjnie przepływ aplikacji internetowej to synchroniczny, to znaczy składamy żądanie do serwera i zatrzymujemy się, czekając na odpowiedź, aż około 5 lat temu ten model obowiązywał, jednak przy nowych wymaganiach i nowych narzędziach już potrzebujemy czegoś bardziej dynamicznego.
Aplikacja asynchronicznaAplikacja asynchroniczna to taka, która pozwala nam na wykonywanie różnych czynności, które nie kolidują ze sobą i każda z nich konsultuje inną część na serwerze, dzięki temu podczas zapisywania dokumentu możemy konsultować się z innym, bez konieczności oczekiwania na odpowiedź, przykładem tego typu aplikacji jest Gmail, gdzie wysyłając maila widzimy skrzynkę odbiorczą.
W tej sekcji zobaczymy, czym jest kontroler asynchroniczny i jak go zbudować za pomocą ASP.NET MVC.
Jednym z najważniejszych komponentów naszych aplikacji są sterowniki, w ASP.NET MVC możemy sprawić, by działały asynchronicznie, dzięki temu możemy zapobiec awariom procesów podczas wykonywania zapytania.

Blokada wątkuChociaż przez większość czasu ta blokada jest tak mała, że ​​wydaje się, że robi się kilka rzeczy jednocześnie, zdarzają się sytuacje, kiedy musimy przygotować znacznie cięższy proces i blokuje on wątek roboczy w taki sposób, że Proces głód, czyli procesy, które czekają na wątek tak długo, że umierają.
Dzieje się tak, ponieważ serwer zaczyna układać oczekujące procesy i dochodzi do punktu, w którym przestrzeń, z której może korzystać, przepełnia się, dzięki temu zobaczymy tak popularny błąd usługi 503 niedostępny, aby tego uniknąć, możemy utworzyć sterownik asynchroniczny, co nie skraca czasu wykonywania procesu, ale zwalnia wątek przetwarzania, aby inne procesy mogły z niego korzystać.
Aby nasz kontroler był asynchroniczny, musimy przestrzegać podstawowej struktury jego działań, w ten sposób możemy osiągnąć nasz cel, do tego musimy przestrzegać pewnych konwencji ustalonych przez framework. Zobaczmy, czego potrzebujemy:
Akcja asynchronicznaMusimy stworzyć akcję w naszym kontrolerze, która ma słowo Asynchroniczny w jego imieniu więc umownie ASP.NET MVC dowiesz się, czym jest proces asynchroniczny. Przykładem może być SzukajKsiążkiAsync, dodatkowo to działanie lub metoda musi zwrot nieważny.
Akcja zakończonaNastępnie musimy stworzyć akcję, którą możemy wywołać po zakończeniu procesu asynchronicznego, w tym celu musimy stworzyć akcję, która obsłuży powrót AkcjaWynik, w tym celu musimy stworzyć metodę ze słowem Zakończony w Twoim imieniu, takie jak: Wyszukiwanie w książkach zakończone, dzięki temu będziemy już mieli niezbędne podstawowe elementy.
Jak widać, do stworzenia kontrolera asynchronicznego nie potrzeba wiele, przede wszystkim jest to dopracowanie logiki i przestrzeganie nieco konwencji, aby framework mógł określić, co budujemy w aplikacji. Podstawy programowania asynchronicznego w ASP.NET MVC Nie są one wcale skomplikowane, w drugiej części tego samouczka zobaczymy pełniejszy przykład tworzenia kontrolera asynchronicznego, oprócz innych ważnych koncepcji.
PoprzedniStrona 1 z 2Następny

Będziesz pomóc w rozwoju serwisu, dzieląc stronę ze swoimi znajomymi

wave wave wave wave wave