Asynchrone Controller in ASP.NET MVC

Erstellen Sie einen asynchronen Treiber

Traditionell ist der Ablauf einer Webanwendung synchron , das heißt, wir stellen eine Anfrage an den Server und hören auf, während wir auf die Antwort warten. Bis vor etwa 5 Jahren war dieses Modell gültig, aber mit den neuen Anforderungen und den neuen Tools brauchen wir bereits etwas mehr dynamisch

Asynchrone Anwendung
Eine asynchrone Anwendung ermöglicht es uns, mehrere Aktivitäten auszuführen, die sich nicht gegenseitig stören, und jeder konsultiert einen anderen Teil des Servers, damit wir ein Dokument speichern können, in dem wir einen anderen konsultieren können, ohne auf eine Antwort warten zu müssen, ein Beispiel dafür Anwendungstyp ist Google Mail . Während des Sendens einer E-Mail wird der Posteingang angezeigt.

In diesem Abschnitt werden wir sehen, dass es sich um einen asynchronen Treiber handelt und wie er mit ASP.NET MVC erstellt wird .

Asynchrone Steuerungen

Eine der wichtigsten Komponenten unserer Anwendungen sind die Controller. In ASP.NET MVC können sie asynchron arbeiten, sodass verhindert wird, dass Prozesse während einer Abfrage blockiert werden.

asp_control_asinc_part1.jpg

Gewindesperre
Obwohl dieser Block die meiste Zeit so klein ist, dass das Gefühl entsteht, dass mehrere Dinge gleichzeitig erledigt werden, müssen wir manchmal einen viel schwereren Prozess vorbereiten und den Thread so blockieren, dass die Verhungern von Prozessen, dh Prozessen, die so lange auf den Thread warten, bis sie sterben.

Dies liegt daran, dass der Server mit dem Stapeln der wartenden Prozesse beginnt und einen Punkt erreicht, an dem der verfügbare Speicherplatz überfüllt wird. Damit wird der häufig auftretende Fehler 503 “Dienst nicht verfügbar” angezeigt. Um dies zu vermeiden, können Sie einen asynchronen Controller erstellen, der dies nicht tut Es verringert die Zeit, die der Prozess während der Ausführung dauert, gibt jedoch den Verarbeitungsthread frei, damit andere Prozesse ihn verwenden können.

See also  So schalten Sie die Xiaomi Mi Box S aus

Erstellen Sie einen asynchronen Controller

Damit unsere Steuerung asynchron ist, müssen wir eine grundlegende Struktur ihrer Aktionen einhalten. Auf diese Weise können wir unser Ziel erreichen, für das wir die vom Framework festgelegten Konventionen befolgen müssen. Mal sehen, was wir brauchen:

Asynchrone Aktion
Wir müssen innerhalb unseres Controllers eine Aktion erstellen, deren Name das Wort Async enthält, damit MVC gemäß der ASP.NET- Konvention weiß, was der asynchrone Prozess ist. Ein Beispiel kann SearchBooksAsync sein . Zusätzlich muss diese Aktion oder Methode void zurückgeben .

Aktion abgeschlossen
Dann müssen wir eine Aktion erstellen, die wir aufrufen können, sobald der asynchrone Prozess abgeschlossen ist. Dazu müssen wir eine Aktion erstellen, die die Rückgabe des ActionResult-Objekts verarbeiten kann. Dazu müssen wir eine Methode erstellen, deren Name das Wort Completed enthält , z. B . : SearchBooks Completed Damit haben wir bereits die notwendigen Grundelemente.

Wie wir sehen, brauchen wir nicht viel, um eine asynchrone Steuerung zu erstellen, sondern vor allem, um die Logik auszuarbeiten und die Konventionen zu befolgen, damit das Framework bestimmen kann, was wir in der Anwendung erstellen. as bases de la programación asíncrona en ASP.NET MVC no son nada complejas, en la segunda parte de este tutorial veremos un ejemplo más completo de cómo crear un controlador asíncrono además de otros conceptos importantes. Die Grundlagen der asynchronen Programmierung in ASP.NET MVC sind überhaupt nicht komplex. Im zweiten Teil dieses Lernprogramms wird neben anderen wichtigen Konzepten ein vollständigeres Beispiel für die Erstellung eines asynchronen Controllers gezeigt.

Zurück
Seite 1 von 2
Weiter

administrator

Leave a Reply

Your email address will not be published. Required fields are marked *