gpt4 book ai didi

server - 为什么用 Hypercorn 运行 Quart 应用程序/它不是自动的吗?

转载 作者:行者123 更新时间:2023-12-05 08:39:22 35 4
gpt4 key购买 nike

如果您检查 Quart 库,app.run() 只是建立一些配置然后使用 asyncio.run(serve(self, config)) ,其中serve来自from hypercorn.asyncio import serve

因此,即使您通过 python myapp.py 运行 Quart 应用程序,它是否已经在使用 Hypercorn 服务器?

特别是,这与通过 hypercorn myapp:app 运行有什么区别?

https://pgjones.gitlab.io/quart/deployment.html

It is not recommended to run Quart directly (via run()) in production. Instead it is recommended that Quart be run using Hypercorn or an alternative ASGI server. Hypercorn is installed with Quart and is used to serve requests by default (e.g. with run()).

所以听起来,尽管 Hypercorn 默认使用 run() 来处理请求,但不建议使用 run()?还有其他人感到困惑吗?

最佳答案

So even if you run a Quart app via python myapp.py, isn't it already using a Hypercorn server?

是的。

In particular, what's the difference between this and running via hypercorn myapp:app?

我想为开发保留 run 方法,这样它可以默认做出对开发有利但对生产不利的决策。目前的一个例子是 run 方法默认使用重新加载器(每当代码更改时重新加载应用程序),这在开发时很好,但在生产中存在性能问题。另一个例子是 run 方法不会使用多个 worker,这再次导致生产性能变差。

(我是Quart的作者)

关于server - 为什么用 Hypercorn 运行 Quart 应用程序/它不是自动的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59854870/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com