如果您检查夸脱库,app.run()只是建立一些配置,然后使用asyncio.run(serve(self, config)),服务来自from hypercorn.asyncio import serve。
所以,即使你通过python myapp.py运行一个夸脱的应用程序,它不是已经使用了一个超级玉米服务器吗?
特别是,这和通过hypercorn myapp:app运行有什么区别?
https://pgjones.gitlab.io/quart/deployment.html
不建议在生产中直接(通过run())运行夸脱。相反,建议使用超级玉米或替代的ASGI服务器运行夸脱。超级玉米安装有夸脱,默认情况下用于服务请求(例如,run())、.
。
因此,听起来好像,即使默认情况下用run()来处理请求,也不建议使用run()吗?还有人困惑吗?
发布于 2020-01-22 11:18:16
所以,即使你通过pythonmyapp.py运行一个夸脱的应用程序,它不是已经使用过超级玉米服务器了吗?
是啊。
特别是
,这和通过超级玉米应用程序运行有什么区别呢?
我希望保留用于开发的run方法,这样它就可以在默认情况下做出有利于开发但不利于生产的决策。目前的一个例子是,run方法默认使用重新加载器(每当代码更改时重新加载应用程序),这在开发时很好,但在生产中存在性能问题。另一个例子是,run方法不会使用多个工作人员,这再次导致生产中的性能下降。
(我是夸脱作者)
https://stackoverflow.com/questions/59854870
复制相似问题