К сожалению, нет.Любое решение, которое делает то, что вы хотите, включает браузер, запускающий HTTP-запрос, когда вкладка / окно закрыты, и этого не произойдет.
Лучшее, что вы можете сделать, - это иметь пользователей'время ожидания сеансов истекает через относительно короткое время (например, 15 минут) и выполняется агрессивная очистка сеансов с истекшим сроком действия для каждого сценария, который хочет знать фактическое количество активных пользователей.Имейте в виду, что это ухудшит производительность.
Если 15 минут все еще слишком много для вас и вы не можете уменьшить время жизни сеанса (потому что это будет раздражать ваших пользователей, если они вышли из системы после 10 секунд бездействия), вы можете заставить ваши страницы "пинговать" сервер, используя AJAX, чтобы поддерживать сеанс.Это позволит вам получать результаты почти в режиме реального времени, , но , что, вероятно, снизит вашу производительность, не будет работать для пользователей с отключенным JavaScript и подвержено сбоям в случае временных проблем с подключением.