我最近开始与Node.js并排使用Flask框架,但从未听说过为Node.js应用程序设置代理服务器。所以我想知道为什么有必要使用Nginx作为Flask应用程序的代理服务器?
此外,将Flask应用程序部署到生产中的最佳方法是什么?
这个问题Are a WSGI server and HTTP server required to serve a Flask app?针对WSGI服务器和HTTP服务器给了我一些想法。
对于是否可以为Node.js应用程序使用代理服务器,我也感到困惑。
请有人帮我。
答案 0 :(得分:1)
NGINX是一个HTTP服务器,可用于许多不同的应用程序堆栈中。它执行许多功能,但是不能直接与Flask应用程序交互。
这就是Gunicorn玩的地方。 NGINX接收HTTP请求,并将其传递到Gunicorn,由Flask应用程序处理(请考虑一下views.py中定义的路由)。
Gunicorn是WSGI服务器,用于处理HTTP请求并将其路由到任何与WSGI兼容的python应用程序,例如Flask,Django,Pyramid等。