我刚刚开始研究 Tornado 和异步 Web 服务器。在龙卷风的许多示例中,较长的请求由以下内容处理:
- 调用 tornado 网络服务器
- tornado 对 api 进行异步网络调用
- 在回调等待被调用时让龙卷风继续接受请求
- 在回调中处理响应。服务器到用户。
因此,出于假设目的,假设用户正在向 tornado 服务器发出请求/retrive
。/retrieve
将向内部 apimyapi.com/retrieve_posts_for_user_id/
或 w/e 发出请求。api 请求在获取请求时可能需要一秒钟的时间来运行,然后当它最终返回 tornado 服务器时响应。 首先,这种流动是使用龙卷风的“正常”方式吗?网上的许多代码示例都建议这样做。
其次,(这是我开始感到困惑的地方)假设上述流程是标准流程,应该myapi.com
是异步的吗?如果它不是异步的,并且每个请求可能需要几秒钟的时间,它不会造成与阻塞服务器相同的瓶颈吗?也许龙卷风或任何异步的正常用例示例将有助于阐明这个问题?谢谢你。