多个 API 端点有多少个 aiohttp 会话?
How many aiohttp sessions for multiple API endpoints?
假设我想定期(比如每 5 秒)使用 aiohttp
向 40 个不同的 restful API 端点发出 GET 请求,事件循环中有 40 个协程。
阅读此处 https://aiohttp.readthedocs.io/en/stable/client_quickstart.html 的文档后,我怀疑最好使用 40 aiohttp.ClientSession
s,每个端点一个。但我不确定整个应用程序是否更合适。如果单个会话包含一个连接池,那么处理 40 个端点听起来很不错。
测试性能非常重要,因为端点有一定数量的 noise/variance。我真的希望熟悉该库的人可以概述何时需要多个 ClientSession。
您可以根据需要拥有任意数量的 session(40 个绝对没问题)。它们可以存储在应用程序级别的一些字典中。因此,在您能够使用确切的 session 之后,您需要一些关键。
还有一点,我认为 session 根本没有保持联系。它更像是存储 cookie 和其他 HTTP headers,供您以后的请求使用。
假设我想定期(比如每 5 秒)使用 aiohttp
向 40 个不同的 restful API 端点发出 GET 请求,事件循环中有 40 个协程。
阅读此处 https://aiohttp.readthedocs.io/en/stable/client_quickstart.html 的文档后,我怀疑最好使用 40 aiohttp.ClientSession
s,每个端点一个。但我不确定整个应用程序是否更合适。如果单个会话包含一个连接池,那么处理 40 个端点听起来很不错。
测试性能非常重要,因为端点有一定数量的 noise/variance。我真的希望熟悉该库的人可以概述何时需要多个 ClientSession。
您可以根据需要拥有任意数量的 session(40 个绝对没问题)。它们可以存储在应用程序级别的一些字典中。因此,在您能够使用确切的 session 之后,您需要一些关键。
还有一点,我认为 session 根本没有保持联系。它更像是存储 cookie 和其他 HTTP headers,供您以后的请求使用。