【问题标题】:boto3 s3 put_object times outboto3 s3 put_object 超时
【发布时间】:2018-07-19 01:36:06
【问题描述】:

我有一个可以在我的机器上运行的 python 脚本(OSX、python 2.7.13、boto3 1.4.4),但不适用于我的同事(Windows7,否则相同)。

身份验证似乎有效,我们可以同时使用 s3 的 list_objects_v2 和 get_object。但是,当他尝试使用 put_object 上传时,它会超时。这里是a full log;上传从第 45 行开始。

我已经尝试使用他的凭据并且它有效。他尝试上传一个小文件,当它在字节范围内时它会起作用,但即使 kb 也太大了。我们甚至在另一个互联网连接上的另一台 Windows 机器上尝试过,但没有成功。

我的上传代码很简单:

with open("tmp_build.zip", "r") as zip_to_upload:
  upload_response = s3.put_object(Bucket=target_bucket, Body=zip_to_upload, Key=build_type+".zip")

在我们的运行中,密钥解析为 test.zip,文件大小约为 15mb。

为什么它在 Windows 上失败了?我可以给你什么更多的调试信息?

【问题讨论】:

    标签: python amazon-web-services amazon-s3 boto3


    【解决方案1】:

    https://github.com/boto/boto3/issues/870 问题中汲取灵感,我将.read() 添加到我的 Body 参数中,并且它有效。

    【讨论】:

    • 显然这是一个 API 问题。
    【解决方案2】:

    可能是网络问题。你在同一个网络上吗?

    您可以使用 AWS-CLI 上传它吗 试试下面的

    aws s3 cp my-file.txt s3://my-s3-bucket/data/ --debug
    

    我还考虑在上传中添加 X 次重试可能会为您提供有关手头错误的更多信息。大多数情况下,这些都是零星的网络相关问题

    【讨论】:

      猜你喜欢
      • 2016-12-24
      • 2021-05-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-07-04
      • 1970-01-01
      • 2017-05-06
      • 1970-01-01
      相关资源
      最近更新 更多