@run182

Как лучше организовать хранение временных данных?

Есть такая задача: есть приложение, пользователь авторизуется в нем с определенным параметром и видит других авторизованных в данный момент пользователей с таким же параметром.
Вариант решения: можно при авторизации записывать их в БД, но тогда постоянно расти количество устаревших записей (можно таблицу время от времени чистить, но мне кажется такой вариант не совсем правильный).
Есть какие-нибудь "элегантные" варианты для решения такой задачи?
  • Вопрос задан
  • 129 просмотров
Решения вопроса 1
sergiks
@sergiks Куратор тега PHP
♬♬
Надо как-то определять момент «выхода» пользователя. Будь то таймаут после последнего действия или регулярный ping.

Для временных, недолго живущих данных, можно порекомендовать любую базу данных в оперативной памяти. Кроме того MySQL умеет хранить таблицы в памяти.

И да, согласен с предыдущим оратором, самым элегантным решением, по-моему, является Redis. Он, в т.ч., умеет хранить данные с заданным временем жизни – если вы выберете вариант с таймайтом после последнего действия.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
redis
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы