Ver Mensaje Individual
  #12  
Antiguo 10-06-2011
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.233
Reputación: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por casacham Ver Mensaje
Yo utilizo un sistema similar para loguear a los usuarios de la base de datos, y esta pregunta que da inicio al hilo me ha surgido un monton de veces. No me anime a hacer lo que propones porque se me ocurrio que si hubo un corte de luz o algo por el estio (resetean la maquina), queda registrado como logueado cuando puede no estarlo.
Hace tiempo utilizamos un sistema similar. La única modificación para evitar esto, es que cada minuto (configurable) el usuario/cliente hacía un UPDATE a la tabla de ENTRADAS para guardar la hora (hora del servidor). El UPDATE no "perjudica" mucho, pues 1 UPDATE cada minuto es poco (ojo si tenemos 400 clientes conectados que entonces a lo mejor si sobrecarga... ) y de esta forma puedes detectar las conexiones fantasma.

Las conexiones que llamamos "zombies" o "fantasmas" son aquellas que llevan entre 1 y 5 minutos sin actualizar. Pasados 5 minutos se borran esas entradas. De esta forma cuando una máquina se cuelga, pasado 1 minuto esa entrada se considera zombie, y pasados 3 o 5 se borra. Es una forma de tener "actualizada" esa información de la tabla de ENTRADAS. Los tiempo son configurables dependiendo de las necesidades y de la sobrecarga del sistema. Si son 5 máquinas puedes usar 1 minuto, si son 300 tal vez sea mejor utilizar 10 minutos.

Cita:
Empezado por casacham Ver Mensaje
Se me ocurre que se pueden utilizar los componentes INDY cliente y servidor UDP o TCP, similar a un programa de chat, para lograr una interconeccion entre los ejecutables y se den aviso entre ellos de quien esta logueado.
Esta la estamos utilizando ahora, pero la verdad es que cuando hay muchas máquinas (hablamos de 100 conexiones), y sobre todo cuando se conectan a la vez (todo el mundo llega a las 9:00 conecta el ordenador y entra en la aplicación) estamos notando retardos.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita