一、功能简介
分片并行上传:一个大文件切成N片,前端开多个线程同时上传,速度翻倍
分片并行下载:多线程分段下载,前端合并
批量文件并行上传:同时上传多个文件
批量文件并行下载:同时下载多个文件
秒传:文件内容相同秒传
二、为什么要用?
之前的方案虽然支持断点续传,但有个致命问题——串行上传:
痛点很明显:
上传慢:尤其是高延迟网络(比如跨国、移动网络),时间都花在等响应上
下载更慢:一个 500MB 的视频,下载中断就得重来,虽然断了能续,但还是串行
带宽浪费:现代宽带都是百兆千兆,串行传输根本跑不满
用户体验差:等半天进度条不动,用户直接关页面
三、技术实战(基于 Spring Boot 3.5.11 + JDK17)
核心代码
秒传
if (contentMd5 != null) {FileInfoDto existing = checkFileByMd5(contentMd5);if (existing != null) {