Сколько пользователей слишком много при использовании переменных сеанса?
-
19-08-2019 - |
Вопрос
В настоящее время я использую переменные сеанса в качестве кэша для сокращения вызовов в базу данных. Р>
Мне интересно, сколько одновременно работающих пользователей перестает работать? 1000, 10000 .... 100000 ??? Также начнёт ли он отслаиваться при определенной нагрузке? И есть какие-нибудь альтернативы?
Я знаю, что это зависит от того, сколько данных я храню на пользователя, но я хочу услышать об опыте других людей. Р>
У меня все настроено так, что когда код пытается получить доступ к сеансу с истекшим временем ожидания, он перезагружается из базы данных.
В настоящее время я использую iis6, но я мог бы легко использовать iis7, если бы он лучше обрабатывал сессии.
Изменить. Да. Я использую переменные приложения для данных, не относящихся к пользователю.
Решение
Вероятно, вам стоит посмотреть Memcached , если вы дошли до этого момента. р>
Другие советы
Если это вас беспокоит, используйте сервер состояний или Параметры хранилища SQL для сеанса. Почти для всех приложений это не будет проблемой, хотя.
Если у вас более 124 889 пользователей, ваш сервер перестанет отвечать на запросы.
Редактировать: если ваши данные не изменяются и могут быть использованы повторно, попробуйте кэшировать их в переменной области приложения, то есть справочных данных.
Маловероятно, что емкость переменной сеанса когда-либо будет ограничивающим ресурсом для вашего сервера. Какую конкретную причину вы спрашиваете?
Как насчет использования кеша, он позволяет автоматически аннулировать кеш.
Аннулирование кэша может быть выполнено как на основе тайм-аута, так и потому, что он " выгнан " из-за ресурсов.
Вы можете использовать кэш для каждого пользователя, назначив каждому элементу свой ключ.