import asyncio
from sanic import Sanic
from sanic.response import json
app = Sanic(__name__)
@app.route("/")
async def test(request):
print('func invoke!')
await asyncio.sleep(3)
return json({"hello": "world"})
if __name__ == "__main__":
app.run(host="0.0.0.0", port=8000, workers=2)
我想请教下关于 sanic 处理接口并发请求。
比如上述我的test
接口函数,该方法处理逻辑直到返回需要 3s ,此时同时有 5 次请求进入。
我期望的结果是同时输出 5 次func invoke!
,然后依次返回 response 。
但是目前情况是队列效果,进入函数输出func invoke!
,3s 后返回 response ,紧接着输出下一个func invoke!
觉得是服务端很基础的问题,但是实在是没有在 google 中找到想要的答案...请各位大佬赐教
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.