Является ли ASP.Net State Server элегантным решением? - PullRequest
3 голосов
/ 16 апреля 2010

У нас есть проект ASP.Net MVC, который начнется с одного веб-сервера, но, скорее всего, вскоре превратится в небольшую веб-ферму. Поскольку ASP.Net Authentication хранит идентификатор пользователя, и кеширование данных также может быть полезным, нам, вероятно, потребуется довольно скоро перейти на сервер состояний.

Мне бы хотелось услышать от других, как State Server работал и как он масштабируется с точки зрения производительности.

В качестве альтернативы, мы могли бы спроектировать его как полностью не сохраняющий состояния, не используя сеансы кэширования данных и отслеживания с зашифрованным cookie.

Обновление: ранее у меня была некоторая дезинформация (от технического консультанта Microsoft ...), Auth не сохраняет в сеансе, как я думал, он просто сохраняет в cookie. Таким образом, нам не понадобится сервер состояний в этой ситуации.

1 Ответ

2 голосов
/ 16 апреля 2010

Приложение без сохранения состояния (без сеанса) будет более масштабируемым. При использовании ASP.NET FormsAuthentication идентификатор пользователя сохраняется в зашифрованном файле cookie, который доступен при каждом запросе, и вы можете получить информацию о пользователе из хранилища данных. Для дальнейшего повышения производительности вы можете кэшировать результаты некоторых дорогих запросов. В идеале этот кеш должен быть распределен по ферме серверов кеша. Например, вы можете использовать memcached , у которого есть провайдер для ASP.NET .

...