【最佳实践】OSS开源工具ossutil-大文件断点续传

常常碰到内部同窗或者外部客户问ossutil关于大文件断点续传的问题。本文简单描述下原理并举例说明。html

用户可从这里获取ossutil。git

官网:https://help.aliyun.com/document_detail/50452.html
代码:https://github.com/aliyun/ossutilgithub

OSS断点续传

应用场景

当调用OSS的PutObject来上传较大的文件时,若是上传过程当中出现错误,好比网络错误,那么这次上传失败。重试时必须从文件起始位置上传。网络

针对这种状况,OSS提供了分片上传(Multipart Upload)来达到断点续传的效果。分片上传就是将要上传的文件分红多个数据块(OSS里又称之为Part)来分别上传,上传完成以后再调用OSS的接口将这些Part组合成一个Object。spa

所以,OSS断点续传适用于如下场合。htm

  • 恶劣的网络环境:如手机端,当出现上传失败的时候,能够对失败的Part进行独立的重试,而不须要从新上传其余的Part。
  • 断点续传:中途暂停以后,能够从上次上传完成的Part的位置继续上传。

详细信息,请参考https://help.aliyun.com/document_detail/31850.html接口

实现原理

在分片上传的过程当中,已经上传的Part的生命周期是永久的,所以很容易能够实现断点续传的功能。生命周期

相关文章
相关标签/搜索