python – boto3在SWF上超时60秒

SWF文档建议“工作人员应将其客户端套接字超时设置为至少70秒(比服务保留轮询请求的最长时间高10秒).”

目前我的作品收到了阅读时间,例如:

botocore.vendored.requests.packages.urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host='swf.eu-west-1.amazonaws.com', port=443): Read timed out. (read timeout=60)

我已经准备好了

socket.setdefaulttimeout(70) 

,但它似乎没有产生任何影响.我看到在botocore enrpoint.py上将DEFAULT_TIMEOUT设置为60,但是找不到在boto3中自定义它的方法.如何将其移至70以避免长轮询中的读取超时?

解决方法:

你可以像这样设置客户端:

from boto3.session import Session
from botocore.client import Config

session = Session(aws_access_key_id=aws_id,
                  aws_secret_access_key=aws_secret,
                  region_name=region)
config = Config(connect_timeout=50, read_timeout=70)
client = session.client('swf', config=config)
上一篇:python – 使用Boto3将文件上传到带有前缀的S3存储桶


下一篇:AWS云计算题目总结