更新时间:2020-09-11 17:14
PDS的文件上传流程包含四个阶段,其中步骤2在只有一个分片时不需要
PDS提供调用者只传输数据指纹,服务端根据指纹判断数据是否已经存在,如果已经存在,直接保存数据指针,快速完成文件上传,极大降低数据上传量,同时降低上传时延,提升用户体验,但需要调用者对使用场景有一定预估,因秒传有一定的副作用,需要在调用端计算数据的md5和sha1值,如果在创建大量非重复文件场景,建议不使用。
在调用创建文件时填写如下字段:size、content_hash、content_hash_name(sha1)、content_md5,PDS系统将进行数据指纹检测,并根据检测的接口返回不同的值:
当文件较大(如1GB以上)时,计算整个文件的sha1、md5将花费较大的资源,但可能是数据是第一次上传,可以只计算前1KB的sha1,调用创建文件接口,将计算的sha1填写到pre_hash字段中,PDS系统将进行数据指纹检测,并根据检测的接口返回不同的值:
对于小文件(如10M以下)在非弱网环境下,文件可以在几秒中内完成上传,为了减少和服务端的交互,可规划单个分片上传。PDS在创建文件的返回信息中中会返回以第一个分片的上传信息,对于小文件可省去上传步骤的第三步。
因大文件上传时间长,需考虑以分片为单位的断点续传。简单流程如下:
上述这种方式有个缺点:在每次上传文件分片之前都需要获取一次uploadURL,解决这个问题有两种方式,
在文档使用中是否遇到以下问题
更多建议
匿名提交