我在我的 Tornado 应用程序中大量使用了 3rd 方 API,似乎在消除了其他一些低效率之后,我仍然遇到每个请求 300-600 毫秒的响应时间。我最好的猜测是 Tornado 每次都在重新协商 SSL 连接,但我不确定如何深入了解请求缓慢的来源。
我正在寻找可以按时间分解连接的每个阶段的东西,例如“收到的证书:100 毫秒”和“服务器响应:200 毫秒”
我通常对同一服务器执行多个异步请求,如下所示:
liked_response, following_response, subscribed_response = \
yield [gen.Task(http_client.fetch, like_request),
gen.Task(http_client.fetch, following_request),
gen.Task(http_client.fetch, subscribed_request)]
如何更深入地了解 Tornado 的网络堆栈,以确定我的请求的哪些部分运行缓慢?