这是 Beta 探索课程,内容结构、实验步骤和示例可能会继续调整。
用户体验与状态流转
体验不等于进度条
断点续传需要产品层面的配合。用户不应该只看到一个模糊的进度条,而应该看到清晰、可预期的状态:
- 正在校验文件
- 正在上传(第 N / M 个分片)
- 已暂停,可继续
- 正在合并
- 正在安全扫描
- 上传完成
状态与文案
把技术状态翻译成用户语言:
uploading -> 正在上传 62%(已上传分片 5/8)
paused -> 已暂停,点击继续上传
merging -> 正在合并文件,请稍候
scanning -> 正在安全检查
available -> 上传完成,可以查看
关键点:合并和校验对超大文件很耗时,一定要异步化,否则用户会看到「卡在 100%」。
弱网与中断的体验
弱网环境下断点续传的价值最明显:
- 上传中断后,重新连接自动从断点继续。
- 用户切后台、锁屏、刷新页面,任务状态保留。
- 重新进入页面时,提示「发现未完成的上传,是否继续?」。
秒传的体验
断点续传 + hash 识别还能带来一个惊喜体验——秒传:
用户上传一个文件,服务端发现「这个文件的 hash 已经存在」, 直接返回可用,不用真的传输内容。
实现前提:服务端保存了文件 hash 索引,且能确认内容一致。这是「识别同一上传」策略的副产品,能极大提升重复上传场景(如团队共享素材)的体验。
体验的边界
体验设计要克制,避免误伤:
- 自动续传要可关闭(用户可能不想继续)。
- 大文件合并 / 扫描耗时,要诚实展示,而不是假装瞬间完成。
- 权限与配额变化时,续传要重新校验。
小结
断点续传的体验本质是把技术状态机翻译成用户语言:
- 明确的分片级进度,而不是模糊的百分比。
- 合并、扫描异步化,诚实展示耗时。
- 用 hash 识别带来秒传等惊喜体验。
到这里,传输层(分片 + 断点续传)已经能支撑大文件和弱网络。下一章把存储从业务服务拆出去——对象存储。
发现内容有问题?
告诉我们哪里需要改进。
