物联网断点续传

断点续传是一种在网络传输中断后,能够从中断的位置继续传输的技术。它可以有效地避免因为网络不稳定、服务器故障、用户操作等原因导致的传输失败,节省了用户的时间和流量,提高了传输的效率和可靠性。断点续传在很多场景中都有广泛的应用,比如文件下载、视频播放、在线更新、远程备份等。

一、断点续传的原理

顾名思义就是断点续传

什么是断点?

在文件上传过程中,将一个要上传的文件分成N块 ,然后使用多线程并发多块上传 ,因为某种原因导致上传被中断或暂停,此时中断或暂停的位置就成为断点

什么是续传?

意思是指从中断的位置继续上传剩下的部分文件,而不是从头开始上传。

二、实现流程步骤

方案一,常规步骤

1、将需要上传的文件按照一定的分割规则,分割成相同大小的数据块;

2、初始化一个分片上传任务,返回本次分片上传唯一标识;

3、按照一定的策略(串行或并行)发送各个分片数据块;

4、发送完成后,服务端根据判断数据上传是否完整,如果完整,则进行数据块合成得到原始文件。

方案二、本文实现的步骤

1、前端(客户端)需要根据固定大小对文件进行分片,请求后端(服务端)时要带上分片序号和大小

2、服务端创建conf文件用来记录分块位置,conf文件长度为总分片数,每上传一个分块即向conf文件中写入一个127,那么没上传的位置就是默认的0,已上传的就是Byte.MAX_VALUE 127(这步是实现断点续传和秒传的核心步骤)

3、服务器按照请求数据中给的分片序号和每片分块大小(分片大小是固定且一样的)算出开始位置,与读取到的文件片段数据,写入文件。

相关推荐
jonyleek12 小时前
【JVS更新日志】物联网、企业计划、企业文档等3.25更新说明!
物联网·私有化部署
Zevalin爱灰灰14 小时前
零基础入门学用物联网(ESP8266) 第一部分 基础知识篇(六)
单片机·物联网·嵌入式·esp8266
ALex_zry15 小时前
物联网OTA升级系统设计:从固件分发到版本管理
c++·经验分享·物联网·跨平台
北京耐用通信16 小时前
工业级抗干扰!耐达讯自动化CC-Link IE转Modbus RTU网关,稳定运行,让数据不丢包
人工智能·科技·物联网·网络协议·自动化·信息与通信
ALex_zry16 小时前
C++ MQTT物联网通信实战:从入门到生产环境
java·c++·物联网
搜佛说17 小时前
13-第13章-自定义数据处理器开发
物联网·ai·开源·边缘计算
xyzhan20 小时前
使用Delphi开发混凝土生产车间自动化过程控制系统的仿真系统
运维·物联网·自动化·delphi·仿真·混凝土车间
北京耐用通信21 小时前
工业现场通信互通 耐达讯自动化CC-Link IE转Modbus RTU网关
人工智能·物联网·网络协议·自动化·信息与通信
木子清billy21 小时前
物联网浏览器(IoTBrowser)-js开发人脸识别
开发语言·javascript·物联网
DolphinDB智臾科技21 小时前
为何实时处理能力逐渐成为物联网数据库选型的关键
数据库·物联网