Хранить сеанс с использованием файлов cookie или переменных сеанса http для масштабируемого решения? - PullRequest
0 голосов
/ 01 марта 2011

У меня есть одно веб-приложение, которое в процессе входа в систему хранит userId в переменной сеанса http (после подтверждения, конечно!). Я не использую никакие переменные сеанса, кроме этой, для получения информации о пользователе. Я не знаю, является ли это наиболее масштабным решением для меня. Мой сервер резервирует память для этого? Лучше вместо этого использовать куки?

1 Ответ

1 голос
/ 01 марта 2011

Если вы используете несколько серверов приложений (сейчас или в будущем), я считаю, что переменная сеанса http зависит от сервера, на котором работает пользователь (поправьте меня, если я ошибаюсь), поэтому в этом случае вы можетенайдите решение «липкого сеанса», которое блокирует пользователя на конкретном сервере (например, балансировщики нагрузки EC2 предлагают следующее: http://aws.amazon.com/about-aws/whats-new/2010/04/08/support-for-session-stickiness-in-elastic-load-balancing/).

Я рекомендую использовать куки-файл (при условии, что моя логика выше верна), но вы должны убедиться, что у вас есть какая-то мера безопасности, чтобы пользователи не могли изменить свой cookie и получить доступ к учетной записи другого пользователя.Например, вы можете хешировать некоторую строку с секретным ключом и идентификатором пользователя, который вы проверяете на стороне сервера, чтобы убедиться, что он не был подделан.

...