使用aiohttp / asyncio进行1百万个请求 – 字面意思
发布时间:2020-12-16 22:48:26 所属栏目:Python 来源:网络整理
导读:我跟进了这个教程:https://pawelmhm.github.io/asyncio/python/aiohttp/2016/04/22/asyncio-aiohttp.html,当我做50 000个请求时,一切正常.但我需要进行1百万个API调用,然后我对此代码有问题: url = "http://some_url.com/?id={}" tasks = set() sem = asyn
我跟进了这个教程:https://pawelmhm.github.io/asyncio/python/aiohttp/2016/04/22/asyncio-aiohttp.html,当我做50 000个请求时,一切正常.但我需要进行1百万个API调用,然后我对此代码有问题:
因为Python需要创建100万个任务,所以它基本上只是滞后,然后在终端中打印Killed消息.是否有任何方法可以使用预先制作的(或列表)网址的发生器?谢谢. 最佳答案
asyncio是内存绑定(与任何其他程序一样).你不能产生更多内存可以容纳的任务.我的猜测是你达到了内存限制.检查dmesg以获取更多信息.
1百万RPS并不意味着有1M个任务.任务可以在同一秒内执行多个请求. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |