Я использовал метод EventSource, чтобы получить онлайн-статус активных пользователей на моем веб-сайте. В этом следующем коде JavaScript вставляется на каждую страницу
var source = new EventSource("set_online.php");
Таким образом, этот код постоянно выполняет файл set_online.php
.
На стороне сервера, т.е. в set_online.php
выполняется следующий код
$query = "UPDATE my_db SET last_active = '{$current_time}' WHERE id = {$_SESSION["id"]}";
$result = mysqli_query($connection, $query);
Теперь у меня есть два опасения по этому поводу:
- Поскольку база данных last_active постоянно обновляется в режиме реального времени, повлияет ли это на нагрузку на сервер?
- Поскольку соединение открыто, пока пользователь находится на веб-сайте, создаст ли это уязвимости?