Что я делаю?Войти в системный магазин сеансов в базе данных
Я разрабатываю систему входа для своего собственного сайта, когда люди регистрируются в сеансе session_token и сохраняются с использованием сеансов PHP. Сгенерированный session_token также будет вставлен в таблицу базы данных вместе с зарегистрированным идентификатором пользователя и временем и временем session_expire.
Каждый раз, когда пользователь возвращается на мой сайт, он проверяет, существует ли session_token и не истек, в таблице базы данных сеансов.
Вопрос
Как я могу предотвратить мою таблицу сессий от получения полной истекших session_tokens? Я не хочу запускать cron_job для удаления истекших сессий каждые x минут.
Сделайте идентификатор пользователя 'UNIQUE KEY'' в вашей таблице базы данных. Затем, когда «session_token» истек, и вы создаете новый 'session_token', вы обновляете строку этого пользователя. Тогда у вас будет только 1 строка на пользователя. – Sean
Моя цель - иметь несколько сеансов для каждого пользователя, так как у меня есть учетные записи, которые используются более чем одним человеком за раз. –
Вы хотите избежать cron вообще, или вы просто обеспокоены тем, что он работает часто? Как быстро эта таблица заполнится? Кажется, каждые несколько минут может быть излишним для частоты работы cron для этой цели. –