您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何使用龙卷风运行Flask应用

如何使用龙卷风运行Flask应用

Flask文档用于描述如何执行此操作,但是由于以下性能说明而已被删除。除非所有异步代码都已经用Tornado编写,否则您不需要Tornado来提供Flask应用程序。

关于WSGITornado文档也对此进行了描述。它们还包括一个重要警告,即与使用专用WSGI应用程序服务器(如uWSGI,Gunicorn或mod_wsgi)相比,此方法性能可能较低。

WSGI是一个 同步 接口,而Tornado的并发模型基于单线程异步执行。这意味着运行与龙卷风的一个WSGI应用WSGIContainer少可扩展性 比在多线程WSGI服务器一样运行相同的应用程序gunicornuwsgiWSGIContainer仅在以相同的过程合并Tornado和WSGI的好处超过了降低的可伸缩性时才使用。

例如,改用Gunicorn:

gunicorn -w 4 app:app

毕竟,如果您确实真的想使用Tornado,则可以使用docs中描述的模式:

from tornado.wsgi import WSGIContainer
from tornado.httpserver import HTTPServer
from tornado.ioloop import IOLoop
from yourapplication import app

http_server = HTTPServer(WSGIContainer(app))
http_server.listen(5000)
IOLoop.instance().start()
Python 2022/1/1 18:48:31 有463人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶