Respuesta lentísima de SimpleXMLRPCServer en windows xp

Sio2 aussiliar en online.fr
Sab Dic 12 09:20:39 CET 2009


El Sat, 12 de Dec de 2009, a las 01:41:36AM -0300, Felix Perez dijo:

> El problema podría ser de la bd en access que debe ser una del tipo
> msjet,

No, el problema no es de la base de datos. Si miras el código que copié
en el mensaje con que abrí el hilo, en las pruebas he abandonado mi
programa para descartar culpables (hilos, acceso a base de datos, driver
odbc, etc.). La prueba la estoy haciendo con un simple servidor que
recibe una petición del cliente y hace un "ls" del directorio en el que
corre. No hay hilos ni cosas por el estilo: creo un objeto
SimpleXMLRPCServer, le registro la función  que hace el "ls" y hago un
serve_forever para que se quede escuchando.

Y con todo a estas alturas lo claro es que el retraso se produce al
devolver el resultado después de haber cocinado los datos. Ya lo sabía
cuando hacía las pruebas con mi programa más complicado, porque coloqué
un 'print' justo antes de enviar el último 'return' con los datos de
respuesta y el mensajito lo veía escrito en el servidor inmediatamente
después de ejecutar el cliente.

Ya he hecho las pruebas con las distintas versiones de python (2.6.2,
2.5.4 y 3.1.1) y en todas aparece el retraso.

¿Hay algún método de SimpleXMLRPCServer que se ejecute después de la
función que invoca el cliente? Como verify_request, por ejemplo, se
ejecuta antes de ella. Es para hacerlas explícitas en el código y añadir
algún print y ver exactamente en que punto es en el que se produce el
retraso.

-- 
   ¿No ha de haber un espíritu valiente?
¿Siempre se ha de sentir lo que se dice?
¿Nunca se ha de decir lo que se siente?
                  --- Francisco de Quevedo ---
_______________________________________________
Lista de correo Python-es 
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes





Más información sobre la lista de distribución Python-es