2010-11-09 10 views
16

Reading Guru-Gu's blog post about ASP.NET MVC3 hitting RC, mówi: -Jaki jest scenariusz posiadania kontrolera Session-less w ASP.NET MVC3?

sesji mniej Controller Pomoc

Teraz można wskazać, czy chcesz klasy Controller używać sesji-state - a jeśli tak, czy chcesz go być odczyt/zapis lub readonly.read/write lub readonly.

Czy ktoś może wyjaśnić, co niektórzy scenariusze mogą chcieć mieć kontroler bez sesji? lub kontroler tylko do odczytu?

Zawsze tworzyłem plik separate IIS website which I use to handle all static images/content and then have this same website have session state turned off ... więc żadne pliki cookie nie są wysyłane przez przewód. Czy jest to podobny scenariusz?

Odpowiedz

25

Gu skomentował to. Cytując:

Noty zwalniający pokrywę to bardziej (ty można je pobrać z linku do pobrania powyżej). Stan sesji to zaprojektowany tak, aby tylko jedno żądanie od określonego użytkownika/sesji miało miejsce w czasie . Więc jeśli masz stronę, która ma wiele wywołań AJAX dzieje się na , gdy zostaną one przetworzone na modę na serwerze. Going Bezsesorowy oznacza, że ​​będą one wykonywane równolegle w trybie .

Jest to znany scenariusz w ASP.NET w ogóle. Obiekt sesji dla tego samego użytkownika nie jest bezpieczny dla wątków. Oznacza to, że jeśli ten sam użytkownik (ten sam plik cookie z identyfikatorem sesji) wysyła wiele żądań do strony, która korzysta z sesji, te żądania będą kolejkowane i będą przetwarzane szeregowo, a nie równolegle.

+0

Och, wow. Nigdy tego nie wiedziałem (i pracuję z ASP od klasycznego ASP). Łał. Ale ... to ma sens :) Dane sesji są ważne i dlatego będą musiały być "zablokowane", zakładam, zmuszając do seryjnego przetwarzania. Hmm ... Więc byłby to świetny kandydat do tego, aby wszystkie sesje Ajax ActionMethods były mniej sute :) –

+4

Oczywiście wszystkie połączenia AJAX powinny być wykonywane bez sesji. Nawiasem mówiąc, nienawidzę sesji, więc generalnie wykonuję całą sesję aplikacji - mniej :-) –

+1

Więc nic nie potrzeba w ogóle w sesji? zalogowany użytkownik? –

Powiązane problemy