como poner un timeout al PING
Publicado por Vicente (1 intervención) el 26/03/2013 22:54:37
Saludos al grupo.
Tengo el siguiente código:
Se trata de que hace ping a un servidor, si la respuesta es que no se encuentra el archivo, o sencillamente no hay respuesta, reenvía a otro servidor (por si el primero está caído).
Funciona bien, pero el problema está en que si el primer servidor está caído, el código asp se queda esperando 20 o 30 segundos a ver si obtiene respuesta, por lo que se demora demasiado la dirección al segundo servidor.
Me gustaría modificar el código de forma que, si no se obtiene respuesta en 1 segundo, por ejemplo, no espere 20 o 30" a seguir procesando el resto del código.
¿Alguna idea, por favor?
Muchas gracias por vuestra atención.
Tengo el siguiente código:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<%
PING="http://ping.servidor1.com/"
set http_obj = createObject("Microsoft.XMLHTTP")
http_obj.Open "POST",PING,false
On Error Resume Next
http_obj.Send()
codigo = Server.HTMLEncode(http_obj.responseText)
if instr(codigo,"archivo o directorio no encontrado")<>0 then
response.redirect "http://servidor2.com/"
elseif instr(codigo,"404")<>0 then
response.redirect "http://servidor2.com/"
elseif codigo = "" Then
response.redirect "http://servidor2.com/"
else
response.redirect "http://servidor1.com/"
end if
%>
Se trata de que hace ping a un servidor, si la respuesta es que no se encuentra el archivo, o sencillamente no hay respuesta, reenvía a otro servidor (por si el primero está caído).
Funciona bien, pero el problema está en que si el primer servidor está caído, el código asp se queda esperando 20 o 30 segundos a ver si obtiene respuesta, por lo que se demora demasiado la dirección al segundo servidor.
Me gustaría modificar el código de forma que, si no se obtiene respuesta en 1 segundo, por ejemplo, no espere 20 o 30" a seguir procesando el resto del código.
¿Alguna idea, por favor?
Muchas gracias por vuestra atención.
Valora esta pregunta


0