在业务场景中文件上传很普遍,而大文件的上传经常会导致上传时长过久,大量占用带宽资源,而分片上传就解决了目前的问题。
前端 【Concurrent】
- 获取文件进行分片
- 请求服务端过滤出未保存的分片
- 未保存分片上传
Promise限流
【PromiseLimit 】 - 上传完毕,发送合并分片请求
- 保存分片
- 已保存的分片info获取
- 合并分片
# server 初始化
$ cd server
$ go mod init file-split
$ go mod tidy
# 服务启动
$ go run .
# 前端启动
$ cd front
$ yarn
$ yarn start
100M+ 文件分片上传--> Promise限流处理完美、 上传200ms内 完成 🚀
不分片 大概 700ms+ 👇