设置无限会话超时,但每个请求超时都受限制

时间:2018-08-18 05:01:35

标签: python-asyncio aiohttp

我正在尝试快速连接到数千个站点(有些向上),但是似乎设置了aiohttp.ClientTimeout(total=60)并将其传递给ClientSession意味着总共只允许60秒对于所有网站。这意味着大约一分钟后,它们都以concurrent.futures._base.TimeoutError快速失败。我尝试提高该超时时间,从而解决了该故障问题,但是问题是所有线程最终都被挂在了无响应的站点上,并占据了整个长度。

是否可以禁用,但每个请求的超时时间为60秒? (已编辑)-在timeout上似乎有一个{strong>确实参数,但是似乎覆盖了会话超时并导致整个会话在到期时超时,而不是只是那个请求。如果我将session.get(...)的超时时间设置为600,但ClientSession的超时时间设置为15,则所有请求都将在15秒后失败

我希望能够浏览完整的数千个站点列表,每个连接最多等待60秒,但没有总时间限制。唯一的方法是为每个请求创建一个新会话吗?

session.get

0 个答案:

没有答案