Ich untersuche das Konzept des Einreihens für Web-Anwendungen (d. H. Einige Jobtypen in eine Warteschlange zur Vervollständigung durch einen separaten Mitarbeiter, anstatt im Webanforderungszyklus abgeschlossen zu werden).Warteschlangenlösungen für ASP.NET MVC
Ich würde gerne wissen, ob es dafür gute Lösungen gibt, die in einer ASP.NET MVC-Umgebung verwendet werden können.
Hat jemand irgendwelche (gute oder schlechte) Erfahrungen gemacht?
Vielen Dank!
UPDATE:
Nur um zu klären, ich spreche nicht über eingehende Anfragen Warteschlangen. Ich werde versuchen zu zeigen, was ich meine ...
1) Standardsituation:
- Antrag Browser
- Server-Verarbeitung beginnt
- Lange Job beginnt
- Langer Job beendet
- Server Verarbeitung beendet
- Antwort auf Browser zurückgegeben
2) Was in Ich suche nach:
- Requsest von Browser
- Server-Verarbeitung
- Lange Job platziert beginnt in Warteschlange
- Server Verarbeitung beendete
- Antwort auf Browser zurückgegeben
Und in einem anderen Prozess (möglicherweise nachdem die Antwort gesendet wurde):
- Langer Job aus der Warteschlange genommen
- Langer Job beginnt
- Langen Job Fertig
In der ersten Instanz hat der Benutzer waite d eine lange Zeit für Server resoponse, in der Sekunde war es schnell.
Natürlich gibt es bestimmte Arten von Jobs, die dafür geeignet wären, einige würden das nicht sein.
UPDATE2:
Der Kunde muss nicht sofort mit den Ergebnissen der langen Arbeit aktualisiert werden.Die Änderungen würden sich nur dann in der Anwendung zeigen, wenn der Benutzer zufällig eine Seite aktualisiert (nachdem der Job natürlich abgeschlossen wurde).
Denken Sie an einige der Dinge, die im Stapelüberlauf passieren - sie werden nicht sofort in jedem Teil der Anwendung aktualisiert, aber das passiert ziemlich schnell - ich vermute, einige dieser Aufträge werden in die Warteschlange eingereiht.
Warteschlange wird von IIS durchgeführt. Jede Anfrage wird in eine Warteschlange gestellt, die von Worker-Prozessen verarbeitet wird. Die Wartung von Arbeitsprozessen und die Bearbeitung von Anfragen/Antworten werden von IIS erledigt. Warum einen zweiten Warteschlangenmechanismus implementieren? – Christian13467
@ Christian13467: Ich spreche über ein anderes Konzept - siehe Erklärung in Update. – UpTheCreek