tornado 请求相同url阻塞
先贴代码
import time
from tornado.gen import coroutine
from tornado.httpclient import AsyncHTTPClient
from tornado.ioloop import IOLoop
from tornado.web import Application, RequestHandler
class MainHandler(RequestHandler):
@coroutine
def get(self):
client = AsyncHTTPClient()
urls = ['http://www.baidu.com'] * 20
start = time.time()
yield [client.fetch(url) for url in urls]
print(time.time() - start)
def make_app():
return Application([(r"/", MainHandler), ])
if __name__ == "__main__":
app = make_app()
app.listen(8888)
IOLoop.current().start()
我通过浏览器访问http://localhost:8888/,get方法中请求了相同的链接50次,但是发现所花费的时间是所有请求耗时的总和。百度了发现请求相同的链接会阻塞,但是没找到解决方案。
试了在链接后面加上不同的参数,结果还是阻塞的。
请问各位大佬有解决方案吗?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论