视频上传-实现断点续传

视频上传

单纯的视频上传好办 前端传一个大文件的流 后端按照 MultipartFile 接受 然后读数据。

但是问题是视频这种大文件 它一般不会短时间传完, 这中间如果 前端用户的网络不好断了

那么你这个大文件就要重新传 等于前面传的都白费了

所以大文件上传/下载都有一个很重要的功能就是 断点续传

大家平时打lol 或者steam 下载游戏 如果你下到一半 把网关了, 你还可以重新继续从刚才的进度下载

一般不会让你从0又下载一遍

分布式文件系统

这里单独要说 分布式文件系统 的概念,就是我们平时后端做上传图片 视频, 那么前端上传过来的这些东西 后端最后存在哪 这是个问题,
如果是微服务架构中要集中管理 且多方调用,那么你存服务器的机器上面 肯定是不方便的。

所以一般都会有一个 分布式文件系统 专门做这件事

后端接收上传完毕后 把文件 存入分布式文件系统中 把分布式文件系统的路径 再存入数据库


分布式文件系统很多 推荐大家去了解一下 比如MinIO 或者其他开源免费的。

断点续传

然后我们再说断点续传, 这是一个常见的功能性的东西, 并不是某个编程语言的特性
所以我们主要说思路 。

  • 首先 前端/客户端负责把数据分块 比如20M的视频 分成20个1M的数据块 每个块的名字可以用序号 1-20
  • 前端先发一个检查请求给后端 查下这个文件是否存在? 不存在则开始传
  • 前端再发一个请求 包含文件名(一般用md5值 可以解析出文件分布式系统存储路径)分块序号(1-20) 检查一下分块(前端有序的从分块1开始发)是否存在(如果存在说明这个分块已经传完了 传下一个分块 这里就实现了断点续传) 不存在就传这个分块
  • 前端发请求传一个分块的数据 包含文件名(一般用md5值 可以解析出文件分布式系统存储路径)分块序号(1-20)具体的分块文件数据
  • 前端传完最后一个分块 全部传完了给后端发一个合并的指令 后端讲刚才所有的数据快合并

在这里插入图片描述
这里就是断点续传的思路 代码其实不负责 主要是这个思路

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/525694.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

python导入redis库错误的解决方法

python连接redis,很多推荐使用【redis】库, 但是我的IDE一直报错,我分别尝试python3.12和python3.8版本,都不行。错误如下图 解决办法就是 换个库。 换成【redis2】,之前写的代码配置啊什么的不需要改,很方…

【开发环境搭建篇】PyCharm安装

本文收录于 《Python编程入门》专栏,从零基础开始,介绍Python编程入门相关的内容,欢迎关注,谢谢! 文章目录 一、前言二、下载三、安装四、创建新项目五、安装模块六、总结 一、前言 本文介绍如何在Windows环境下安装P…

更新!谷歌倾斜摄影转换生成OSGB瓦片V0.2版

半个月前发表了一篇文章(首发!谷歌倾斜摄影转换生成OSGB格式),首次将谷歌原始倾斜摄影瓦片转成OSGB瓦片,有读者对文章里的内容有诸多疑问,可能我在文章中描述的不够清楚,这里再解释一下。 1.谷歌倾斜摄影3DTiles瓦片生成方案 之…

同样是测痛仪有什么不一样?大小鼠足底光热刺痛仪VS大小鼠鼠尾测痛仪

简单介绍: ZL-024E大小鼠足底光热刺痛仪是应用在痛觉生理学、药理学等痛觉研究的仪器。可自动测定大/小鼠在自由状态下足底光热刺激痛阈时间,操作简便,并且可自动得出测定结果,是用于药理实验中研究镇痛**的理想实验仪器。 详情…

Vue - 你知道Vue中computed和watch的区别吗

难度级别:中高级及以上 提问概率:70% 二者都是用来监听数据变化的,而且在日常工作中大部分时候都只是局限于简单实用,所以到了面试中很难全面说出二者的区别。接下来我们看一下,二者究竟有哪些区别呢? 先说computed,它的主要用途是监听…

【扩散模型】论文精读:VLOGGER: Multimodal Diffusion for Embodied Avatar Synthesis

广告位: 图像拼接论文精读专栏 —— 图像拼接领域论文全覆盖(包含数据集),省时省力读论文,带你理解晦涩难懂的论文算法,学习零散的知识和数学原理,并学会写图像拼接领域的论文(介绍…

篮球竞赛|基于Springboot的篮球竞赛预约平台系统设计与实现(源码+数据库+文档)

篮球竞赛预约平台目录 基于Springboot的篮球竞赛预约平台系统设计与实现 一、前言 二、系统设计 三、系统功能设计 1、前台: 2、后台 管理员功能 用户功能 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获取&#xff…

国珏甄选APP 多方合作 满足进出口跨境贸易需求

顺应互联网技术和全球化趋势的双重推动,国珏甄选APP应运而生,以创新模式颠覆了传统的进出口贸易方式,提供了一个崭新的综合型电商解决方案。国珏甄选APP,全称为国珏展翔科技(成都)有限公司,是一…

CentOS8 64位系统 搭建内网穿透frp

搭建 1、查看系统信息: cat /etc/reahat-realse uname -a 如果存在x86_64说明是64位系统 2、下载frp软件 wget https://github.com/fatedier/frp/releases/download/v0.56.0/frp_0.56.0_linux_amd64.tar.gz #Linux 32位系统 wget https://github.com/fatedier/frp/releases/d…

ctfshow web入门 命令运行 web39---web52

ctfshow web入门 命令执行 昨天看了一下我的博客真的很恼火,不好看,还是用md来写吧 web39 查看源代码 看到include了,还是包含(其实不是) 源代码意思是当c不含flag的时候把c当php文件运行 php伪协议绕过php文件执行 data://text/plain 绕…

【环境变量】基本概念理解 | 查看环境变量echo | PATH的应用和修改

目录 前言 基本概念&理解 注意的点 查看环境变量的方法 PATH环境变量 PTAH应用系统指令 PTAH应用用户程序 命令行参数的修改(内存级) 配置文件的修改 windows环境变量 大家天天开心🙂 bash进程的流程。环境变量在系统指…

C#+net微信预约挂号系统源码,掌上医院挂号,在线缴费、检查、检验报告,住院服务

微信公众号预约挂号系统、支付宝小程序预约挂号系统主要是让自费、医保患者在手机上就能实现就医全过程,实时预约挂号、自费、医保结算,同时还可以查询检查检验报告等就诊信息,真正实现了让信息“多跑路”,让群众“少跑腿”。系统…

k8s部署微服务例子

一、部署服务 需要部署minio、nacos、mysql、consul、elasticsearch、视频解析服务、nfs、skywalking-oap及ui。 二、三个微服务程序 minio服务解析视频-》上传到minio进行存储,构造领域对象信息保存到hive(hive on spark)异步处理-》元数据…

PD虚拟机软件下载:在 Mac 上流畅运行 Windows 游戏!

本想一台 MacBook 走天下,奈何有些软件仅提供了 Windows 端,在 macOS 上打不开 EXE 文件,比如炒股软件、会计软件、游戏、工科专业软件等。 由于苹果芯片架构的变化,新款 Mac 想要安装双系统已经不太现实,有没有更简单…

spring加载类初始化顺序

今天看spring官网的时候,提到了Ordered执行顺序。我当时记得PostConstruct注解会在bean加载后执行,现在又来了一个执行顺序,直接给我整蒙了。 于是我写了一个简单的dom来看看,它是什么: Service("t2ServerImpl&q…

基于单片机便携式测振仪的研制系统设计

**单片机设计介绍,基于单片机便携式测振仪的研制系统设计 文章目录 一 概要二、功能设计三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于单片机便携式测振仪的研制系统设计概要主要涉及利用单片机作为核心控制器件,结合测振原理和技术&#x…

基于视频监管与AI智能识别技术的水利河道综合治理解决方案

一、方案介绍 TSINGSEE青犀视频水利河道综合治理解决方案是依托视频AI智能分析技术,利用水质/水文等传感器、高清摄像机、水利球、无人机、无人船等感知设备实时采集数据,并与视频能力进行联动,达到智能预警的目的。 TSINGSEE青犀方案以信息…

【计算机考研】408有多难?复习到什么程度才能120+?

备考计算机考研的408统考是一件需要花费精力和时间的事情,我想分享一些基于个人经验的备考策略,希望能帮助到大家。 首先,我将备考过程划分为三轮进行。在第一轮复习阶段,我每天安排3小时的时间学习机组原理和操作系统&#xff0…

何为网络协议?一图知晓网络过程。

网络协议就是计算机之间沟通的语言 为了有效地交流,计算机之间需要一种共同的规则或协议, 就像我们和老外沟通之前,要先商量好用哪种语言, 要么大家都说中文,要么大家都说英语,这才能有效地沟通。 网络协…

挖洞思路 | 账号攻击的几种常见手法

我在日常渗透时遇到个同时存在这几类问题的网站 https://www.xxxx.com/,该网站为某电商平台,合理结合几类问题,当时已拿到管理员权限,漏洞现已提交并确认修复,思路分享给大家。 开始之前,说个习惯&#xf…