物联网断点续传

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

一、断点续传的原理

顾名思义就是断点续传

什么是断点?

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

什么是续传?

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

二、实现流程步骤

方案一,常规步骤

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

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

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

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

方案二、本文实现的步骤

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

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

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

相关推荐
小赖同学啊12 小时前
将Blender、Three.js与Cesium集成构建物联网3D可视化系统
javascript·物联网·blender
拓端研究室14 小时前
专题:2025机器人产业深度洞察报告|附136份报告PDF与数据下载
大数据·人工智能·物联网
Codebee15 小时前
OneCode 3.0 从0到1干货——AIGC及MCP注解驱动开发物联网AI决策应用
人工智能·物联网
熬夜的猪仔17 小时前
第二章 基于新版Onenet搭建云服务(stm32物联网)
stm32·物联网·freertos
TDengine (老段)1 天前
TDengine 使用最佳实践(2)
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
Byte_Me1 天前
IoT 小程序:如何破解设备互联的碎片化困局?
物联网·小程序·iot
时序数据说1 天前
如何选择时序数据库:关键因素与实用指南
大数据·数据库·物联网·时序数据库·iotdb
电子小子洋酱2 天前
VScode SSH远程连接Ubuntu(通过SSH密钥对的方式)
vscode·物联网·ubuntu·ssh
国科安芯2 天前
车规级ASM1042芯片在汽车无线充电模块中的应用探索
人工智能·单片机·嵌入式硬件·物联网·安全·汽车
厨 神2 天前
物联网-ESP8266
物联网