[pyar] mejorar tiempo que instancia un cliente pysimplesoap

Ezequiel Marquez exe.zaid en gmail.com
Mar Mayo 14 18:59:31 ART 2013


gracias por la rapida respuesta ya lo probe y bajo a 0.009 con cache :)

saludos,


El 14 de mayo de 2013 18:38, Mariano Reingart <reingart en gmail.com> escribió:

> En general, la lentitud al analizar una descripción de servicio de un
> webservice soap (WSDL) pueden ser dos cosas:
>  * El tiempo que tarda en bajar el xml
>  * El tiempo que tarda en parsearlo y generar las estructuras en python
>
> Con pysimplesoap, debería ser más rápido porque no usa parsers xml
> complejos, y como la descripción del servicio se parsea a una
> estructura simple de diccionarios y listas, se puede serializar
> rápidamente (picklear).
> Usando el parámetro cache del constructor del cliente podes indicar el
> directorio donde se almacena dicho archivo temporal.
>
> Por ejemplo, podes ver el método Conectar de la clase WSLPG
> (liquidacion de granos, java) o WSFEv1 (factura electrónica, .net):
>
> https://code.google.com/p/pyafipws/source/browse/wslpg.py#354
>
> https://code.google.com/p/pyafipws/source/browse/wsfev1.py#203
>
> Básicamente sería:
>
> from pysimplesoap.client import SoapClient
> client = SoapClient(
>             wsdl="https://fwshomo.afip.gov.ar/wslpg/LpgService?wsdl",
>             cache="/tmp/",
>     )
>
> Te debería generar dos archivos en el directorio temporal (en este caso
> /tmp):
>
> /tmp/362d74a5a4d3981a82fe09bdc787467a.xml: el wsdl original
> /tmp/362d74a5a4d3981a82fe09bdc787467a.pkl: la estructura python
>
> En este caso, los tiempos deberían bajar a:
> sin cache: 6.05420303345 s (básicamente lo que tarda descargar el wsdl
> de AFIP, 70Kb en este caso)
> con cache: 0.00130701065063 s
>
> Además, dependiendo del sistema operativo y demás, tenes más o menos
> 1.50 segundos para levantar python e importar los módulos y demás
> (tendrías que aislar ese tema).
> Te adjunto un programa mínimo de prueba, si queres ponele tu wsdl y
> fijate cuanto te da.
>
> Cualquier duda avisame,
>
> Sds
>
> Mariano Reingart
> http://www.sistemasagiles.com.ar
> http://reingart.blogspot.com
>
>
> 2013/5/14 Ezequiel Marquez <exe.zaid en gmail.com>:
> > me falto un 0, son 10000 lineas :)
> >
> >
> > El 14 de mayo de 2013 17:42, Ezequiel Marquez <exe.zaid en gmail.com>
> escribió:
> >
> >> Hola a tod en s, tengo un problema con los tiempos que demora en
> instanciar
> >> un cliente pysimplesoap, alrededor de 1.4 seg, también probé con suds y
> >> demoro 4 seg.
> >> el wsdl es bastante grande(1000 lineas) alguna idea?
> >>
> >>
> >>
> >> --
> >> Ezequiel Marquez
> >
> >
> >
> >
> > --
> > Ezequiel Marquez
> >
> > _______________________________________________
> > pyar mailing list pyar en python.org.ar
> > http://listas.python.org.ar/listinfo/pyar
> >
> > PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
> >
> > La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> > Argentina - http://www.usla.org.ar
>
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
>



-- 
Ezequiel Marquez
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20130514/24be741b/attachment.html>


More information about the pyar mailing list