Там, где я работаю, предъявляются строгие требования по ограничению количества входов одного пользователя в отдельное приложение.Я подошел к этой проблеме следующим образом:
1) Иметь таблицу входа пользователя, которая содержит информацию о пользователе, и поле, которое называется «последнее обновление» и «Вход в систему».Когда пользователь входит в «последнее обновление» с текущей датой времени и «входит в систему» с 1. Это предотвращает повторный вход этого пользователя.
2) Создайте ajax-вызов jquery для обновленияполе базы данных «последнее обновление» с новой отметкой времени.Это происходит по расписанию (как каждые 1 мин).
3) Последнее, что мне нужно было сделать, - это запланировать задачу, которая проверила, было ли последнее обновление для активных входов в систему (в базе данных) больше, чем фиксированный период времени, если это были пользователи ".msgstr "статус был изменен с 1 на 0 (что позволило им войти снова).Причина, по которой это важно, заключается в том, что вы не можете предполагать, что пользователь всегда будет нажимать кнопку «Выйти», когда он уходит.Иногда они просто закрывают браузер или уходят.Когда это произойдет, если они попытаются вернуться в приложение, они не смогут снова войти в систему (поскольку база данных считает, что они уже вошли в систему).
Надеюсь, это приведет вас в правильном направлении.