Я использую сеансы в Django для хранения информации о логине пользователя, а также другой информации. Я читал веб-сайт сеансов Django, но у меня остались вопросы.
С веб-сайта Django:
По умолчанию Django хранит сеансы в m с помощью сеансов в Django для хранения информации о логине пользователя, а также другой информации. Я читал веб-сайт сеанса Django, и у меня все еще есть несколько вопросов. Из Django ...
Я использую сеансы в Django для хранения информации о логине пользователя, а также другой информации. Я читал веб-сайт сеансов Django, но у меня остались вопросы.
С веб-сайта Django:
По умолчанию Django хранит сеансы в m с помощью сеансов в Django для хранения информации о логине пользователя, а также другой информации. Я читал веб-сайт сеанса Django, и у меня все еще есть несколько вопросов. Из Django ...
Я использую сеансы в Django для хранения информации о логине пользователя, а также другой информации. Я читал веб-сайт сеансов Django, но у меня остались вопросы.
С веб-сайта Django:
По умолчанию Django хранит сеансы в ваша база данных (используя модель
django.contrib.sessions.models.Session
). Хотя это удобно, в некоторых настройки быстрее сохранить сеанс данные в другом месте, поэтому Django может быть настроен для хранения данных сеанса на в файловой системе или в кеше.Также:
Для постоянных кэшированных данных установите
SESSION_ENGINE
наdjango.contrib.sessions.backends.cached_db
. Это использует кеш со сквозной записью - каждая запись в кеш также будет записано в базу данных. Сессия читает использовать базу данных, только если данные еще не в кеше.Есть ли хорошее практическое правило, какое из них использовать?
cached_db
кажется, что это всегда будет лучшим выбором, потому что в лучшем случае данные находятся в кеше, а в худшем - в базе данных, где они и были бы. Единственный недостаток - мне нужно настроить memcached.По умолчанию
SESSION_EXPIRE_AT_BROWSER_CLOSE
установлен наЛожь
, что означает файлы cookie сеанса будут храниться в браузерах пользователей для покаSESSION_COOKIE_AGE
. Использовать это, если вы не хотите, чтобы у людей были для входа каждый раз, когда они открывают браузер.Возможно ли, чтобы сеанс истекал при закрытии браузера и указывал возраст?
Если значение является целым числом, сеанс истечет через несколько секунд бездействие. Например, позвонив
request.session.set_expiry (300)
будет завершить сеанс через 5 минут.Что считается «бездействием»?
Если вы используете серверную часть базы данных, обратите внимание, что данные сеанса могут накапливаются в
django_session
таблица базы данных, а Django не обеспечить автоматическую продувку. Следовательно, это ваша работа, чтобы очистить просроченный sessions on a regular basis.So that means, even if the session is expired there are still records in my database. Where exactly would one put code to "purge the db"? I feel like you would need a seperate thread to just go through the db every once in awhile (Every hour?) and delete any expired sessions.