错误处理:Boto:[错误104] Peer连接重置

 上善若水纯_310 发布于 2023-01-18 10:41

我有一个从Amazon S3下载的脚本.这些脚本的工作时间为99.9%.偶尔我收到以下错误(socket.error:[Errno 104]连接由同行重置).一旦我重新启动代码,错误似乎就消失了.由于很难重现错误.我希望下面的代码剪切将修复错误.具体来说,我希望如果出现错误,它会尝试重新下载该文件.我想知道这段代码是否有用,如果还有其他什么我应该加入.我认为错误计数器可能是好的,所以如果错误确实不断出现,它最终会继续前进.(不完全确定如何添加计数器)

files = [#list of files to download]

for file in files:
    for keys in bucket.list(prefix=file):
        while True:
            try:
                keys.get_contents_to_filename()
            except socket.error:
                continue
            break

Jan Vlcinsky.. 5

我有完全相同的问题.如果你在GitHub上搜索boto,你会发现,我们并不孤单.

还有一个已知的已接受问题:https://github.com/boto/boto/issues/2207

达到AWS S3的性能限制

事实上,我们已经习惯了boto和AWS S3服务,我们已经忘记了,这些都是真正的分布式系统,在某些情况下可能会破坏.

我正在归档(下载,tar,上传)大量文件(大约3年,大约15个提要,每个大约每天有1440个版本),并使用Celery更快地完成此操作.我不得不说,我有时会更频繁地收到这些错误,可能达到了AWS S3的性能限制.这些错误通常出现在块中(在我的情况下,我上传大约60 Mbps几个小时).

训练S3表现

当我测量性能时,它被"训练"了.一段时间后,S3桶的响应速度跃升,AWS可能已经检测到更高的负载并启动更多服务它的实例.

试试最新的稳定版 boto

另一件事是,boto在许多情况下试图重试,因此我们的呼叫隐藏了很多失败.有时我升级到最新的稳定版本会有所改善.

我的结论是:

尝试升级到最新的稳定版 boto

当错误率增加时,降低压力

接受这样一个事实,即AWS S3是具有罕见性能问题的分布式服务

在代码中,我肯定会建议增加一些睡眠,(至少5%,但30秒似乎没什么问题),否则你只是推难当的系统,这可能是在目前不稳定的局势.

1 个回答
  • 我有完全相同的问题.如果你在GitHub上搜索boto,你会发现,我们并不孤单.

    还有一个已知的已接受问题:https://github.com/boto/boto/issues/2207

    达到AWS S3的性能限制

    事实上,我们已经习惯了boto和AWS S3服务,我们已经忘记了,这些都是真正的分布式系统,在某些情况下可能会破坏.

    我正在归档(下载,tar,上传)大量文件(大约3年,大约15个提要,每个大约每天有1440个版本),并使用Celery更快地完成此操作.我不得不说,我有时会更频繁地收到这些错误,可能达到了AWS S3的性能限制.这些错误通常出现在块中(在我的情况下,我上传大约60 Mbps几个小时).

    训练S3表现

    当我测量性能时,它被"训练"了.一段时间后,S3桶的响应速度跃升,AWS可能已经检测到更高的负载并启动更多服务它的实例.

    试试最新的稳定版 boto

    另一件事是,boto在许多情况下试图重试,因此我们的呼叫隐藏了很多失败.有时我升级到最新的稳定版本会有所改善.

    我的结论是:

    尝试升级到最新的稳定版 boto

    当错误率增加时,降低压力

    接受这样一个事实,即AWS S3是具有罕见性能问题的分布式服务

    在代码中,我肯定会建议增加一些睡眠,(至少5%,但30秒似乎没什么问题),否则你只是推难当的系统,这可能是在目前不稳定的局势.

    2023-01-18 10:43 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有