物联网断点续传

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

一、断点续传的原理

顾名思义就是断点续传

什么是断点?

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

什么是续传?

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

二、实现流程步骤

方案一,常规步骤

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

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

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

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

方案二、本文实现的步骤

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

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

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

相关推荐
颜颜yan_27 分钟前
时序数据库选型与实战:IoTDB 在工业物联网场景下的上手与踩坑总结
物联网·时序数据库·iotdb
熊文豪2 小时前
时序数据库选型指南:工业物联网时代的数据管理之道
数据库·物联网·时序数据库·iotdb
TDengine (老段)2 小时前
TDengine REST API 使用手册
大数据·数据库·物联网·restful·时序数据库·tdengine·涛思数据
MDIOT旗舰2 小时前
全面解析ZL400边缘网关:高性价比的物联网数据采集解决方案
物联网·mqtt·边缘计算·数据采集·modbus·远程运维·物联网网关
Rotion_深2 小时前
MQTT 通讯协议
物联网·mqtt
钰珠AIOT3 小时前
在电源的滤波电路中10uf 和100nF 的电容滤波的频率大概是多少?如何计算?
单片机·物联网
Alonse_沃虎电子3 小时前
沃虎音频变压器:专业音频系统中的关键组件
网络·物联网·音视频·产品·方案·变压器·电子元器件
飞睿科技4 小时前
解析ESP-SparkBot开源大模型AI桌面机器人的ESP32-S3核心方案
人工智能·嵌入式硬件·物联网·机器人·esp32·乐鑫科技·ai交互
安科瑞刘鸿鹏174 小时前
电量和碳量如何建立关系?企业能碳管理的关键一步
运维·网络·物联网·安全
想放学的刺客5 小时前
单片机嵌入式试题(第20期)通信协议深度解析与系统调试实战
stm32·单片机·嵌入式硬件·物联网·51单片机