Verificar conexión a internet


([N1] aztecmexico) #1

Pues eso, que ando medio perdido en esta ocasión, en V6 había comandos para verificar esto, creo que via modem o algo así, pero en V7 no veo nada parecido.

Me surge la duda porque deseo sincronizar cierta información de sistemas locales contra un vServer en servidor remoto, pero no sé que pase cuando se lanze la función, se quedara “trabada” durante cierto tiempo bloqueando la aplicación, o bloqueará el vServer hasta que termine, etc.

En espera de sus comentarios, reciban un saludo.

Martin Ibarra.


([N3] Humber) #2

imagino que mandará a ejecutarla y en caso de no conectar devolverá un 0 la función.

No creo que velneo tenga algo así como un reintentar automático si no conecta con el servidor remoto al primer intento.

yo trabajé una vez con funciones remotas y al no conectar simplemente daba un retorno mal, pero no quedaba guindada la aplicación al no poder conectar. simplemente terminaba allí.


([N1] aztecmexico) #3

Gracias Humber pues no queda otra más que probar, pero ya con tu comentario pues voy un poco más a la segura.

Cuando se conecta y ejecuta la función, del lado del servidor habrá alguna penalización?


([N3] Humber) #4

Te comento que justamente hace unas horas estuve trabajando en algo parecido ejecutando una función remota y te confirmo que no hay ningun problema, no se queda guindado sino conecta, simplemente el retorno no es el valor esperado. tu te encargarías de validar eso.

podrías explicar mejor un poco el caso, no entiendo a que te refieres especificamente. del servidor local? o a la que te intentas conectar?

De todas maneras imagino que seria lo mismo como mandar a ejecutar un proceso desde cliente, solo que en tercer plano. No creo que haya mucha diferencia. Lo normal de la conexión.

De todas maneras alguien mas experto podría iluminarnos en el tema jeje


([N4] Infortic) #5

Yo he desarrollado un sistema de comunicaciones basado en funciones remotas mandando datos en JSON, si no conecta, parece tener un timeout y no te devuelve valor.

El problema es que tarda unos segundos en responder, 2-5 segundos, no sé si hay forma de que tarde menos.

En mi caso cree una función COM_ECHO que devuelve 1 para comprobar si puedo acceder y de ser así ya lanzo la batería de comunicaciones ya que si tengo 100 paquetes a mandar, a 5 segundos por cada uno que no puede conectar, pues eso, se tira un buen rato, si no quieres que el cliente se quede colgado hazlo en 2 plano.


([N4] Infortic) #6

Con 2-5 segundos he sido muy optimista, puede llegar a tardar más de 10 segundos.

Si alguien conoce alguna forma de saber si un vserver responde de forma más rápida sería de agradecer.


([N4] velavisual) #7

@info

Lo recomendable es verificar previamente si el servidor esta Ok.

Mira el siguiente artículo sobre Control de la conexión con el comando ‘SDV: Conectar’


([N4] Infortic) #8

Hola velavisual.

El fallo de conexión con servidor SDV es más rápido de detectar que con función remota? me suena que si no hay conexión también tarda unos segundos en darse cuenta…


([N4] Ramon Denuc) #9

Hola,

Yo utilizo la opción “SDV: Conectar” y tarda como máximo unos 10 segundos en responder.

Saludos


([N3] Humber) #10

Puede que una manera sencilla sea usando telnet, ejecutar el comando por sistema y devolver el resultado a un archivo plano, luego leer el archivo, no creo que eso tome mas de 3 segundos. O en su defecto, mas sencillo aceptar el 0 que devuelve velneo cuando se ejecuta un comando satisfactoriamente y si es mayor a 0, hubo un problema. Se que viene por defecto en linux, no estoy seguro si en windows tambien, pero imagino que si, hay mejores herramientas para esto, pero al menos esta ya viene en el so, solo deberías ejecutar el comando y sin mas… creo… jeje no estoy seguro si en windows viene activo por defecto ya que uso linux, no podría verificar.