[Python-es] Transferencia archivos grandes en socket

Alexis Roda alexis.roda.villalonga en gmail.com
Lun Abr 22 14:52:41 EDT 2019


Hola,
¿sigue igual después de hacer que cambios al código?

Antes de que se inventara HTTP se transferían archivos, así que sí, es
viable transferir con sockets a pelo. DiegoUG habla de web sockets, pero
son una bestia totalmente distinta de los sockets.

¿Es HTTP una opción viable? depende del caso de uso.

Prueba con estos cambios en el cliente:

                        while len(buf) < filesize:
                            to_read = filesize - len(buf)
                            buf = socket_cliente.recv(262144 if to_read >
262144 else to_read)  #8192 1024*8 o 4096 1024*4
                            f.write(buf)
                            updt(filesize, len(buf))  # barra de progreso
                        # f.write(buf)

De esta forma solo se mantiene en memoria un bloque, no el archivo entero.
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20190422/3fd9c120/attachment.html>


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