Zajmuję się koncepcją kolejkowania dla aplikacji internetowych (np. Umieszczanie niektórych typów zadań w kolejce do zakończenia przez oddzielnego pracownika, zamiast wypełniania w cyklu żądania sieci).Rozwiązania kolejkowania dla programu ASP.NET MVC
Chciałbym wiedzieć, czy istnieją dobre rozwiązania, które można wykorzystać w środowisku ASP.NET MVC.
Czy ktoś miał jakieś (dobre lub złe) doświadczenia?
Dziękujemy!
UPDATE:
Właśnie w celu wyjaśnienia, ja nie mówię o kolejkowanie żądań przychodzących. Postaram się zilustrować, co mam na myśli ...
1) sytuacji standardowe:
- żądać od przeglądarce
- przetwarzanie Server rozpoczyna rozpoczyna
- Długa praca
- Długie zadanie zakończone
- przetwarzanie Serwer zakończył
- Response powrócił do przeglądarki
2), czego szukam w:
- Requsest z przeglądarki
- przetwarzanie Server rozpoczyna
- Długi pracę umieszczonego w kolejki
- Serwer przetwarzanie zakończeniu
- Response powrócił do przeglądarki
A w innym procesie (ewentualnie po odpowiedź została wysłana):
- Długa praca pochodzi z kolejki
- Długa praca zaczyna
- Długi pracę zakończono:
W pierwszej instancji użytkownik zwrócił uwagę d długi czas na reakcję serwera, w drugim był szybki.
Oczywiście istnieją pewne rodzaje zleceń, które byłyby odpowiednie do tego, inne, które nie byłyby odpowiednie.
Update2:
Klient nie musi być od razu na bieżąco z wynikami dłuższej pracy.Zmiany pojawią się w aplikacji zawsze, gdy użytkownik odświeży stronę (oczywiście po zakończeniu pracy).
Pomyśl o niektórych zdarzeniach związanych z przepełnieniem stosu - nie są one natychmiast aktualizowane w każdej części aplikacji, ale dzieje się to dość szybko - podejrzewam, że niektóre z tych zadań są w kolejce.
Kolejkowanie jest wykonywane przez IIS. Każde żądanie jest umieszczane w kolejce przetwarzanej przez procesy robocze. Utrzymanie procesów roboczych i obsługa żądań/odpowiedzi odbywa się za pomocą IIS. Po co wdrażać drugi mechanizm kolejkowania? – Christian13467
@ Christian13467: Mówię o innej koncepcji - zobacz wyjaśnienie w aktualizacji. – UpTheCreek