Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 1
 
 
Conexiones Remotas Cortadas Por El Servidor MySQL
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Conexiones Remotas Cortadas Por El Servidor MySQL 
 
Buenas:
Pues resulta que utilizo gambas contra una base de datos situada en un servidor de internet que tenemos contratado en los USA. Todo funciona bien y la velocidad de acceso es más que aceptable para consultas, listados y ediciones de registros individuales.
El problema que me encuentro es que el servidor remoto me corta las conexiones transcurrido un tiempo concreto. La rutina que utilizo para conectar con la base de datos (y que no pongo a propósito, para que no os "contamine") prevee esto haciendo una doble llamada a la base de datos, primero selecciono un registro muy cortito de una tabla que sólo tiene un registro con una letra y si todo va bien realiza la consulta real.
Funciona, pero es totalmente redundante. ¿A alguien se le ocurre una solución distinta?
Si a nadie se le ocurre: ¿qué sería más rápido y liviano en la "consulta ping", esa letrita que os he comentado o algo así como "select (1 + 2)", de manera que no haya accesos a disco?
El problema es que nada en la conexión local (ni opened ni nada por el estilo) nos permite saber si el servidor la ha cortado cuando vamos a efectuar la consulta.

Agradecido de antemano
 




===================
No podemos regresar
 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Conexiones Remotas Cortadas Por El Servidor MySQL 
 
Visto el escaso éxito de este hilo, me respondo a mí mismo poniendo el código que actualmente utilizo (simplificado).
No se me ocurre nada más que hacer una consulta ping. ¿A alguien se le ocurre algo más eficiente?

En un módulo con funciones comunes llamado "comun"
   ' variable pública utilizada por defecto en todos los forms y procedimientos. Se supone que está abierta
   ' todo el tiempo de ejecución, pero el servidor la corta cuando pasa de cierto tiempo de inactividad.

PUBLIC hcon as Connection

PUBLIC FUNCTION consultar(sql as string) as result
  
   DIM resultado as result
  
   'Consulta ping, lo más pequeña posible. Si tiene éxito la conexión está viva

   TRY hcon.Exec("Select nick from usuarios limit 1")

   IF ERROR THEN          'El servidor ha cortado la conexión si hay error
        hconfig = NEW Connection
        WITH hconfig
             .Type = "mysql"
             .Host = "ip-del-host"
             .User = "nombre del usuario"
             .password = "clave del usuario"
             .Name = "base de datos"
         END WITH
         TRY hcon.Open  'Si falla ahora la apertura es que pasa algo extraño  y es imposible continuar
         IF ERROR THEN
             Message.Error("!ATENCIÓN! Fué imposible conectar con la base de datos.")
             QUIT   'abortamos el programa, un poco bestia, vale...
         ENDIF      
    ENDIF
    resultado = hcon.Exec(consulta)
    RETURN resultado
END
 


Luego, en el formulario o procedimiento:
dim res as result
dim sql as string

sql="Select * from personas order by apellidos, nombre"

res=consultar(sql)
...
....
 


Se admiten sugerencias...
 




===================
No podemos regresar
 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Conexiones Remotas Cortadas Por El Servidor MySQL 
 
Pues si no me equívoco, alguien pregunto sobre este tema y estuvieron discutiendo que forma era la mas rapida. Voy a buscarlo, y si no lo encuentro ahora, mañana te lo miro con el ordenador en un momento, ya que ahora estoy en la cama con el movil.

P.d.: alguien sabe si existe el runtime de gambas para android? Me refiero al sistema operativo de google para moviles... seria interesante poder programar gambas para estos dispositivos...
 




===================
Hay dos cosas infinitas: el Universo y la estupidez humana. Y del Universo no estoy seguro.
Albert Einstein

En el SEXO querer es poder, si ELLA quiere, TU puedes.
Cubel!
 
Cubel - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 

Publicar nuevo tema  Responder al tema  Página 1 de 1
 

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario



  

 

cron