Problema: Necesito descargar cientos de imágenes de diferentes hosts. Cada host tiene entre 20 y cientos de imágenes.¿Es WebClient la mejor manera de descargar datos http?
Solución: utilizando un new WebClient
cada vez que se necesita descargar una imagen a través del método DownloadData
de WebClient.
¿O sería mejor mantener un grupo de conexiones de socket abierto y hacer la solicitud http utilizando llamadas de nivel inferior?
¿Es costoso abrir/cerrar una conexión tcp (supongo que es lo que hace WebClient), de modo que el uso de pools suena más eficiente?
El mejor código es el código que logra los resultados que necesitas sin errores en el tiempo que necesites. Entonces, ¿puede comentar qué necesita mejorar en comparación con su código actual (suponiendo que haya hecho estimaciones de la velocidad con la que puede descargar imágenes y las descargas de códigos actuales más lentas que sus objetivos, pero que tenga margen para mejorar hasta llegar a los límites de la red). –
Debería haber agregado que la velocidad es la mayor preocupación. – sanjosep43
+1 Pregunta muy interesante. –