我编写了一个python应用程序,它通过套接字将文件传输到服务器。它始终有效,但我的问题是:这是通过套接字将文件从桌面客户端传输到服务器的好方法吗?例如,Google Drive或Dropbox桌面客户端如何同步文件(正如我所知,已经存在的文件GD客户端仅发送更改,如rsync),但新文件呢?
答案 0 :(得分:1)
您可以考虑将文件打包到torrent中,然后以这种方式进行传输。 Torrent有很多错误恢复。许多大型公司,例如暴雪,都使用种子向用户提供内容。
你仍然需要一种方法来转移当然的种子信息
请参阅python包libtorrent
和名为opentracker
我还使用套接字进行了文件传输,如果互联网连接不中断,并且你不想并行流式传输,这很好。
答案 1 :(得分:0)
客户端通常通过HTTP-POST上传文件。这甚至适用于客户端仅发送更改的情况。 Here's关于如何使用Python发布文件的示例。
使用套接字的唯一好处是服务器异步联系客户端,例如,它可以告知客户端应该下载的文件,如DropBox等。