boto3.s3.transfer如何处理分段上传

时间:2016-08-08 20:48:01

标签: amazon-web-services file-upload amazon-s3 boto3

我使用以下代码上传到S3:

config = TransferConfig(multipart_threshold=1024)
transfer= S3Transfer(s3_client, config)
transfer.upload_file(fileadded, bucket, key,callback=ProgressPercentage(file))

我无法了解内部boto如何处理分段上传。 关于相同的问题我几乎没有问题,假设我有2.5 MB文件:

  1. 然后该文件将分为3个部分,如1,1和.5 MB?
  2. 所有3个部分将并行或顺序上传?
  3. 在java的aws库中我们有TransferManager,boto中有类似的东西吗?
  4. 如果此代码足以进行多部分上传?因为我遇到了一些相同的复杂代码示例
  5. 非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

您的代码是正确的。 S3传输将使用您创建的配置来传输文件。检查documentation on TransferConfig以查看您可以设置的参数及其默认值。

回答你的问题:

  1. parallel,using threads
  2. boto3使用s3transfer 在内部,但通常只使用TransferConfig