Tengo un cliente de Python que envía una gran cantidad de datos a través del httlib de la biblioteca estándar. Los usuarios se están quejando de que la aplicación es lenta. Sospecho que esto puede deberse en parte al cliente HTTP que estoy usando.¿Un reemplazo para httplib de python?
¿Pude mejorar el rendimiento reemplazando httplib por otra cosa?
He visto que twisted ofrece un cliente HTTP. Parece ser muy básico en comparación con sus otras ofertas de protocolo.
PyCurl puede ser una alternativa válida, sin embargo, su uso parece ser muy antipático, por otro lado, si su rendimiento es realmente bueno, entonces puedo soportar un poco de código no pitónico.
Por lo tanto, si tiene experiencia en mejores bibliotecas de cliente HTTP de python, cuénteme al respecto. Me gustaría saber qué piensas del rendimiento relativo a httplib y qué piensas de la calidad de la implementación.
ACTUALIZACIÓN 0: Mi uso de httplib es en realidad muy limitado - la sustitución tiene que hacer lo siguiente:
conn = httplib.HTTPConnection(host, port)
conn.request("POST", url, params, headers)
compressedstream = StringIO.StringIO(conn.getresponse().read())
Eso es todo: No se proxies, redirección o cualquier materia de lujo. Es un HTTP simple. Solo necesito poder hacerlo lo más rápido posible.
ACTUALIZACIÓN 1: Estoy atrapado con Python2.4 y estoy trabajando en Windows 32. Por favor, no me hable sobre mejores formas de usar httplib. Deseo conocer algunas de las alternativas a httplib.
Esa no es una verdadera canalización de HTTP; sigue siendo un HTTP persistente y persistente. Para obtener un verdadero canal de conexión HTTP TRUE, vea este fragmento de código usando Python httplib. [link] (http: // code.activestate.com/recipes/576673-python-http-pipelining/) –