Как грамотно считать онлайн на сайте?

Необходимо реализовать подсчитывание активных пользователей на сайте в данный момент. Считать тех, кто отрыл сайт и забыл про него на пол дня не надо. При чём хотелось бы сделать обновление в реальном времени. То есть если к примеру человек закроет вкладку, то это сразу отобразится у других. Значение обновлять буду через вебсокеты, так что главное вовремя, грамотно и с хорошей производительностью считать онлайн на сервере.
  • Вопрос задан
  • 107 просмотров
Пригласить эксперта
Ответы на вопрос 2
webinar
@webinar Куратор тега Yii
Учим yii: https://youtu.be/-WRMlGHLgRg
в afterAction контроллеров юзеру присваивать переменную lastActive в которую писать unix метку времени, например в базу ее писать. Потом делать выборку пользователей у которых lastActive больше, чем сейчас минус 15 минут например.
Можно вынести это в поведение или в компонент и подключить в конфиге.
Ответ написан
@ArturF
php dev
> Значение обновлять буду через вебсокеты

а что будет выступать сервером очередей? Если нода, то там и храните в какой-нить переменной. А инкрементить/декрементить сможете на событиях connect/disconnect с последующей отправкой обновленного значения подписчикам.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы