我的文件系统设计如下:
文件具有 path 属性;
文件夹的 path 为 null ;两者都有 parentId 。
我想到的方法是:把服务器的文件先组成一颗文件树,然后使用 filepath.walk 遍历打包成 zip,之后把 zip 压缩包下载。 但是这种方法存在两个问题:
求教更高效的批量下载实现方式,谢谢!
1
ebingtel 2020-11-09 08:25:16 +08:00
python 里面有 streamzip 模块, 本质: 并不需要把所有的文件都压入到 zip 之后,再返回,这样太浪费时间了; 边压边返回……
|
2
Evrins 2020-11-09 08:30:28 +08:00 via iPhone 1
边遍历边打包可以用这个库 https://github.com/mholt/archiver
直接流式写入到 Http response 里面 |
3
huayumo 2020-11-09 15:02:03 +08:00
可以看看七牛的上传下载工具,感觉效率挺高的
|