Привет, ребят. Нужна помощь в вопросе отслеживания онлайна пользователей. Думаю сохранять время последнего запроса в кэше, большинство задач это решает, но проблема с фильтрацией по "Пользователь онлайн". Помимо этого фильтра есть и другие, по полям в БД, так что нужно чтобы оно все вместе учитывалось через логическое И. Собственно вопрос такой: каким образом в данном случае лучше реализовать этот фильтр? Пока что два варианта вижу: периодически лезть в бд и проставлять время активности, либо доставать из кэша id юзеров с недавней активностью и использовать эти id в фильтре. Второй вариант привлекает больше, но тогда в каком виде хранить данные в кэше?
Есть пару вариантов
На нескольких сайтах видел что при реквесте в базу / редис записывают айди юзера и урл (много записей, но получается весьма точно)
Второй вариант это считать те же запросы в кеш или что там у тебя
Если юзеров не много можно список с последним онлайном ложить в кеш на 5-10 минут и оттуда дергать, но если много - тут уже смотреть нужно