批量上传大量文件至对象存储
批量上传大量文件至对象存储,如某应用系统日志文件上传。尤其是MB左右及以下海量对象场景,推荐使用随机前缀的对象名,从而能够使业务请求均匀分布在多个分区,达到水平扩展性能最优的效果。
示例:
如某应用日志文件归档,原本上传对象为如下形式:
/log/20220610-01.log.tar.gz
/log/20220610-02.log.tar.gz
/log/20220610-04.log.tar.gz
...
/log/20220611-01.log.tar.gz
/log/20220611-02.log.tar.gz
/log/20220611-03.log.tar.gz
/log/20220611-04.log.tar.gz
建议为对象名添加3位以上16进制哈希前缀:
/8bc-log/20220610-01.log.tar.gz
/95d-log/20220610-02.log.tar.gz
/6c5-log/20220610-03.log.tar.gz
/da3-log/20220610-04.log.tar.gz
...
/a7c-log/20220611-01.log.tar.gz
/2bc-log/20220611-02.log.tar.gz
/ea7-log/20220611-03.log.tar.gz
/1d8-log/20220611-04.log.tar.gz
大量上传GB级以上大文件至对象存储
当上传GB及以上大文件甚至是TB级文件(如大型镜像安装包、高清视频文件等)时,推荐使用分段方式进行上传。
采用单次方式上传文件存在5GB大小的限制,并且一旦出现网络波动等原因导致传输中断,需要完整的重新上传整个文件,开销较大。因此,建议使用分段的方式上传大文件,一个文件的多个分段并发上传同时能够提升性能。对于开发者推荐使用分段上传API接口方式,来进行大文件的上传。