Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Desconexión de usuarios, solución óptima, opinion

Estas en el tema de Desconexión de usuarios, solución óptima, opinion en el foro de Mysql en Foros del Web. Hola, Tengo una problemática similar al problema anterior.Es un juego en línea donde los usuarios pueden jugar entre si pero no hay un servidor central, ...
  #1 (permalink)  
Antiguo 23/10/2011, 12:22
Avatar de latinpower  
Fecha de Ingreso: septiembre-2010
Ubicación: Canelones
Mensajes: 116
Antigüedad: 13 años, 7 meses
Puntos: 10
Desconexión de usuarios, solución óptima, opinion

Hola,

Tengo una problemática similar al problema anterior.Es un juego en línea donde los usuarios pueden jugar entre si pero no hay un servidor central, tan solo una base de datos.

Para manterlos on line había pesado utilizar una columna 'Latencia' en donde los usuarios van cambiado de 0 a 1. siendo que si se queda muchas veces en el mismo valor, el usuario cerro el juego, y hay que darlo de baja, (poner la columna activo de 1 a 0).

Ahora tengo 3 posibles soluciones.

1-Que cada usuario (al no haber un servidor de juego) descargue la lista de usuarios, y él mismo se fije quien repitió 3 veces el mismo valor en 'Latencia' y avisarle al server para que lo desconecte. Esto sería bastante ineficiente considerando que si tengo 1000 usuarios, cada uno va a cagar 1000 usuarios de la base de datos en su computadora constantemente.

2-Crear 3 columnas 'Latencia', para simular las chances que tiene antes del 'time out' por así decirlo. Es decir, un usuario entra al programa, actualiza su columna latencia y la pone en 1, a los x segundos después, actualiza la columna 2 y la pone en 0, y luego denuevo a los x segundos la tercer columna la pone en 1, y así constantemente.

Y aqui es donde entra MYSQL a trabajar, la idea es un procedimiento almacenado que se ejecute siempre, el cual, con un sleep, supongamos de 30 segundos, haga un update de todos los usuarios, donde las 3 columnas de latencia valgan lo mismo, y ponga su estado de activo a desconectado.

Estoy bastante inclinado con la opción 2, pero quiero sus opiniones.

Gracias.

Etiquetas: sql, usuarios
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:35.