JSS*_*all 1 python-asyncio server python-3.7 quart hypercorn
如果您检查Quart库,app.run()只需建立一些配置,然后使用asyncio.run(serve(self, config)),其中 serve 来自from hypercorn.asyncio import serve。
因此,即使您通过运行Quart应用程序python myapp.py,它不是已经在使用Hypercorn服务器了吗?
特别是,this 和 running via 有hypercorn myapp:app什么区别?
https://pgjones.gitlab.io/quart/deployment.html
不建议在生产中直接运行 Quart(通过 run())。相反,建议使用 Hypercorn 或替代 ASGI 服务器运行 Quart。Hypercorn 与 Quart 一起安装,默认情况下用于处理请求(例如使用 run())。
所以听起来,即使Hypercorn默认使用 来处理请求run(),也不建议使用run()? 还有人糊涂吗?
所以即使你通过 python myapp.py 运行一个 Quart 应用程序,它不是已经在使用 Hypercorn 服务器了吗?
是的。
特别是,这与通过 hypercorn myapp:app 运行有什么区别?
我想保留run用于开发的方法,以便它可以默认做出对开发有利但对生产不利的决策。目前的一个例子是该run方法默认使用重新加载器(每当代码更改时重新加载应用程序),这在开发时很好,但在生产中存在性能问题。另一个例子是该run方法不会使用多个工人,这再次导致生产中的性能更差。
(我是Quart作者)
| 归档时间: |
|
| 查看次数: |
1022 次 |
| 最近记录: |