2009-02-14 10 views

Respuesta

6

En general, usted pregunta "Cómo saber quién ha estado activo en los últimos x minutos".

Registre su última actividad en cada entrada de página, y luego consulte esa lista para ver quién estuvo activo en los últimos minutos. Puede extender eso y registrar la última página que visitó también, para saber cuántas personas están en línea y cuántas personas hay en una página específica.

Puede hacer esto agregando solo un par de campos a su tabla de usuario en la base de datos. Uno para el último Tiempo de actividad, y el otro para la Última ubicación visitada.

1

puede utilizar sesiones de base de datos y luego utilizarlo para realizar un seguimiento de los usuarios registrados, una vez que empiece a usar sesiones de base de datos de seguimiento se convierte en fácil,

ninguno de los usuarios en línea se acaba de contar de los registros de la tabla

y dado que tendrá registros para cada usuario conectado en la tabla de sesiones, también podrá obtener los nombres de los usuarios que hayan iniciado sesión.

2

el principal problema que tiene con los usuarios que han iniciado sesión es que no hay forma garantizada de garantizar que el número sea exacto, si alguien cierra su navegador o lo mata o pierde poder, la única forma que tiene de saber que no están conectados, es cuando su sesión expira, entonces, de forma predeterminada, esto es de 20 minutos ... no estoy realmente en la idea de persistir esta información en una base de datos, aunque es válido, el mismo problema permanece, todos puede mostrar con precisión el número de sesiones que asp.net cree que están activas, no necesariamente la cantidad de usuarios que todavía usan su sitio. La respuesta de Jonathans es el mejor compromiso ya que es una medida puntual en lugar de una cifra garantizada.

Cuestiones relacionadas