Как узнать количество пользователей онлайн на сайте SPA?
В провайдере аутентификации для net core есть  lastActivity по умолчанию это 5 минут. 

При любом движении это поле обновляется. 

напишите  что то типа select count() from users where lastActivity  > Date('yyyyy-yy-yy')
уменьшать при выходе
Critical logical error. Нет у сайта реальной возможности узнать, ушел пользователь или нет. 
Тут можно отталкиваться только от времени последней активности.