Я уже сделал поиск по этому вопросу и снова и снова обнаружил одни и те же данные - обзор трех разных типов сеансов. (InProc, Sql, StateServer) Однако мой вопрос имеет другой характер.
В частности, каковы преимущества/недостатки использования встроенного .NET-сеанса в первую очередь?
Вот почему я спрашиваю: один разработчик .NET сказал мне, что НИКОГДА не используйте встроенный сеанс Microsoft. Не за что. Даже не создать пользовательский поставщик состояния сеанса. Его аргументация заключается в следующем: если вы включили сессию в IIS, все ваши запросы будут выполняться синхронно. Он говорит, что включение сеанса ухудшает производительность веб-сервера.
Его решение заключается в том, чтобы создать сеанс самостоятельно - класс, который хранит все необходимые вам значения и сериализуется в базе данных и выходит из нее. Он советует вам сохранить уникальный идентификатор, чтобы ссылаться на него в файле cookie или переменной запроса. В нашей среде использование БД для хранения сеансов является обязательным требованием, потому что все страницы, которые мы делаем, находятся в веб-фермах, и мы используем Oracle - поэтому я согласен с этой частью.
Использует ли встроенный сеанс ухудшение производительности больше, чем домашняя сессия? Есть ли проблемы с безопасностью?
Итак, чтобы подвести итог, каковы преимущества/недостатки?
Спасибо всем, кто отвечает!