Я использую Ruby on Rails 3 и хотел бы обработать пользовательские аутентификации, срок действия которых истекает через 15 минут бездействия. Я прочитал « Руководство по безопасности Ruby On Rails », в котором по соображениям безопасности рекомендуется не сохранять аутентификацию в сеансе, поскольку ее значения могут быть изменены на стороне клиента. Поэтому я решил создать модель только для этого.
Для базы данных я создал таблицу со следующими столбцами: «last_sign_in», «last_sign_out» и отметки времени «creation_at» и «updated_at». У каждого пользователя есть отдельная строка для хранения его / ее аутентификационной информации.
Мои вопросы / сомнения:
Что касается производительности системы, рекомендуется ли этот подход, когда в базе данных будет много (тысячи и тысячи) пользователей? Если нет, каков наилучший подход к обработке истечения срока действия аутентификации?
В моем случае , как реализовать код, заботящийся о производительности? То есть, как обрабатывать истечение срока действия аутентификации, как можно меньше взаимодействуя с базой данных и запросами кэширования?
Добавление столбца «last_action» в таблицу базы данных, чтобы получить информацию о времени последнего действия, выполненного пользователями, сколько стоит?