首页 > 其他分享 >关于学成在线项目如何处理断点续传

关于学成在线项目如何处理断点续传

时间:2024-05-15 16:11:11浏览次数:21  
标签:学成 断点续传 在线 文件 分块 上传 服务端 md5

我是基于分块上传的模式实现断点续传的需求,当文件上传一部分断网后前边上传过的不在上传。

具体逻辑流程如下

  1. 前端对文件进行分块处理
  2. 前端开个多线程一块一块上传,上传前服务端发个消息检验该分块是否上传,如果在文件系统 OSS/minio 存在,则不在上传。
  3. 等所有分块上传完毕,服务端合并所有分块,通过md5校验文件的完整性。
  4. 引文分块全部上传到服务器,服务起将所有分块按照顺序合并,就是写每个分块文件内容按顺序依次写入一个文件中,使用字节流去读写文件。
  5. 前端传给服务端一个md5值,服务端合并文件后计算合并后文件的md5值是否和前端一致,如果不一致说明可能由于网络丢包等各种原因需要重新上传。
  6. 上传完毕之后清理冗余的分块文件。

Q 分块文件清理问题?


上传一个文件进行分块上传,上传一半传不了了,之前的分块文件你是怎样处理的?

  1. 在数据库中专门由张表记录minio存储文件的分块信息,
  2. 当文件开始上传就会写入表中,状态设置为上传中,上传完成会更行为上传完成。
  3. 当一个文件传了一般不在上传说明该文件没有上传成功,会有定时任务去查询表中的记录,如果文件未上传完成,则删除minio中没有上传成功的文件目录。

标签:学成,断点续传,在线,文件,分块,上传,服务端,md5
From: https://www.cnblogs.com/pronting/p/18194050

相关文章

  • Springboot+React实现Minio文件分片上传、断点续传
    前言本文采用前后端结合,后端给前端每个分片的上传临时凭证,前端请求临时url,通过后端间接的去上传分片。其实无关乎vue或者react,思路都是一样的,逻辑也全都是js写的,跟模板语法或者jsx也没关系,仅仅是赋值不一样而已。前端:React+TypeScript+Antd+axios+spark-md5+p-......
  • 易易二维码,多功能在线文件预览与二维码生成器
    一、引言在数字化时代,信息的传递与分享变得尤为重要。无论是商务文件、个人文档,还是活动宣传、产品推广,都需要一种高效、便捷的方式来进行信息的展示与分享。易易二维码,作为一款集多WPS、Office文件在线预览、二维码设计、二维码在线报名、网址、图文、文件转二维码以及二维码浏......
  • 推荐几款火爆的Python在线编辑器
    在当今数字化时代,编程已成为一项不可或缺的技能。Python作为一种简单易学且功能强大的编程语言,受到了广大编程爱好者和专业开发人员的青睐。为了方便大家随时随地编写和运行Python代码,市面上涌现了许多优秀的在线Python编辑器。本文将为您推荐几款目前非常火爆的Python在线编辑器......
  • CodePen 的国内替代「笔.COOL」,一个功能完备、使用便捷的在线HTML代码编辑和作品分享
    笔.COOL,是一个在线HTML代码编辑和作品分享平台。笔.COOL提供了一个在线的HTML、CSS和JavaScript代码编辑器。无需任何安装,你只需打开网站,就可以开始编写前端代码。编辑器支持代码高亮、自动补全等功能,提高编码效率。笔.COOL还提供了实时预览功能,预览界面会随着你的代码更......
  • Tracealyzer - RTOS可视化追踪调试软件+Virtual Eval - ADI公司ADC产品在线评估工具
    1、Qfplib-专为ARMCortex-M内核设计的浮点库Qfplib是ARMCortex-M内核的IEEE754浮点库家族。Qfplib有三个分支针对不同的内核,并以不同的优化目标编写。Qfplib-M0-tiny:针对ARMCortex-M0,高度优化的代码大小,仅单精度。Qfplib-M0-full:针对ARMCortex-M0,优化了代码大小......
  • 免费试用在线SuiteCRM产品-简易定制或集成不收费
    您的组织或公司需要一个CRM细化针对性管理客户或商业机会朗读全文Yourbrowserdoesnotsupporttheaudioelement.介绍、用途及服务SugarCRM开源版是一款开放源代码的商业开源软件,具有界面活泼、简单易学的特点。SugarCRM公司是一间创立于2006年、但迅速在全球范围取得......
  • Json转Go在线工具
    1、可以将Json字符串在线自动解析校验格式化为go的struct结构体(严格按照Golang标准执行生成struct结构体)2、提供将任意复杂,简单格式的Json字符串转换生成go的struct结构体3、支持Json格式错误提示,不会格式化不符合规范的Json字符串,以保证struct结构体的准确性4、支持选择是......
  • CSS在线格式化、美化、压缩工具
    网上有不少CSS格式化压缩的工具,但是不少站点有广告干扰,或操作起来不方便,或打开速度比较慢,所以自己定制了这个css格式化压缩的工具,也希望对大家有帮助,提供的这个CSS代码格式化和css在线压缩工具,不需要下载使用YUICompressor或CSSTidy等离线格式化工具,直接在线压缩操作即可。免......
  • 在线htaccess换nginx工具
    htaccess换nginx工具为您提供htaccess与nginx在线转换,apache伪静态文件转为nginx重写规则,htaccess伪静态规则换nginx,apacheRewriteRule转rewrite,apache伪静态文件转nginx重写,apache转nginx重写规则,本工具支持所有的htaccess伪静态、基本的配置规则、重定向等转换为nginx。......
  • Xml和Json在线互转工具
    1、支持将Xml数据转为Json字符串格式2、支持将Json字符串转换为Xml格式的数据3、Json转为Xml数据时,提供自动检测Json格式是否正确,确保转换的Xml数据是准确的4、提供详细的Xml数据和Json字符串数据5、提供示例xml和json示例,供大家测试使用免费使用工具地址:http://tools.linu......