Ya que los veo tan animados con PHP

quiero ver si pueden darme una idea (o varias ideas) de cómo manejar aquello de los usuarios conectados en un momento dado, tal como se maneja en la página inicial de estos foros.
Yo había pensado algo así:
Cuando un usuario se registra grabo en una tabla la hora de entrada, misma que actualizo cada vez que el usuario se mueve de página.
Cuando se muestra la lista de usuarios registrados, para saber si X usuario está activo o no, tomo la hora actual y le resto la hora grabada anteriormente. Si esta diferencia es menor que algún mínimo especificado lo considero activo.
Esto es casi lo primero que se me vino a la mente así que no sé que tan factible sea o si hay otras maneras mejores.
(* Gracias *)