Прежде всего, чтобы дать вам немного информации о текущей среде. У нас есть ряд приложений ASP.NET, все из которых используют сеанс для определенных аспектов. Мы «балансируем нагрузку» на нескольких серверах из-за уровней трафика, однако наша балансировка нагрузки настроена на использование «закрепленных сеансов», поскольку в настоящее время все веб-приложения настроены на использование «InProc» для состояния сеанса.
Мы ищем возможность удалить конфигурацию «закрепленных сеансов» на нашем балансировщике нагрузки, поскольку из-за нагрузки на наш трафик серверы могут перегружаться и действительно перегружаются. Мы хотим использовать более сбалансированный подход, но мы должны иметь возможность использовать сеанс.
Я знаю, что SqlServer для состояния сеанса будет работать, но по причинам, не зависящим от нас, мы не можем использовать SqlServer для хранения нашего состояния. При исследовании выяснилось, что StateServer - наш лучший выбор. У нас есть дополнительный сервер с огромным объемом памяти. Этот сервер может быть нашим StateServer для всего веб-кластера. Мы просто хотим знать следующее.
1.) Помимо любых потенциальных проблем сериализации при переключении с InProc на StateServer, существуют ли какие-либо серьезные известные проблемы с потерей объектов сеанса или созданием ошибок в вышеупомянутой среде?
2.) Помимо единой точки отказа и немного более низкой производительности, есть еще какие-то подводные камни, о которых нам нужно знать при использовании StateServer.
3.) Существуют ли какие-либо показатели, которые показывают разницу в производительности между тремя типами хранилища состояний?