Малка, но важна забележка:InProc не може да се използва във ферма, както подсказва името, той работи в текущия процес на w3wp и не може да бъде споделян във ферма. StateServer е услуга на Windows, така че скоростта на използване на StateServer зависи от това колко бързо се изпълнява услугата Stateserver, това е само памет. SQL, разбира се, трябва да запише данните и да ги извлече, което вероятно е по-бавно само от паметта.
От тук:
- В процес. In process ще работи най-добре, защото паметта за състоянието на сесията се съхранява в ASP.NET процеса. За уеб приложения, хоствани на един сървър, приложения, в които потребителят гарантирано ще бъде пренасочен към правилния сървър или когато данните за състоянието на сесията не са критични (в смисъл, че могат да бъдат реконструирани или повторно попълнени) , това е режимът, който трябва да изберете.
- Извън процес. Този режим се използва най-добре, когато производителността е важна, но не можете да гарантирате от кой сървър потребителят ще поиска приложение. С режима извън процес получавате производителността на четене от паметта и надеждността на отделен процес, който управлява състоянието за всички сървъри.
- SQL сървър. Този режим се използва най-добре, когато надеждността на данните е от основно значение за стабилността на приложението, тъй като базата данни може да бъде групирана за сценарии на отказ. Производителността не е толкова бърза, колкото извън процес, но компромисът е по-високото ниво на надеждност.