Python 使用GeventWSGI和Nginx在生产中部署烧瓶

Python 使用GeventWSGI和Nginx在生产中部署烧瓶,python,nginx,deployment,wsgi,gevent,Python,Nginx,Deployment,Wsgi,Gevent,实际上,我有一个用python编写的RESTAPI,带有flask和flaskrestful扩展。 我使用gevent-WSGI def runserver(): api.debug = True http_server = WSGIServer(('', 5000), api) http_server.start() 在我的机器上,一切都像一个符咒。 我想在linux虚拟机上投入生产,在互联网上我搜索了几个小时,我没有选择mod_wsgi,因为gevent不能正常工作,所以我更喜欢使用ngi

实际上,我有一个用python编写的RESTAPI,带有flask和flaskrestful扩展。 我使用gevent-WSGI

def runserver():
api.debug = True
http_server = WSGIServer(('', 5000), api)
http_server.start()
在我的机器上,一切都像一个符咒。 我想在linux虚拟机上投入生产,在互联网上我搜索了几个小时,我没有选择mod_wsgi,因为gevent不能正常工作,所以我更喜欢使用nginx

在互联网上,我看到了由uWSGI托管的flask应用程序,我的答案是我需要使用uWSGI? 即使我在烧瓶应用程序中使用geventWSGI? 如何处理这个问题? 如果我不需要uWSGI,我只需要配置nginx站点就可以将请求正确地传递到我的flask应用程序? 我对这一切都是新手,所以我有点困惑


提前感谢

您可以在Gevent模式下运行Uwsgi,然后通过nginx将所有flask请求路由到它

       server {
          listen 80;
          server_name customersite1.com;
          access_log /var/log/customersite1/access_log;
          location / {
          root /var/www/customersite1;
          uwsgi_pass 127.0.0.1:3031;
          include uwsgi_params;
          }

有关更多详细信息,请参见

首先感谢您的回答,我没有什么问题,当我使用uwsgi或gunicorn,然后使用nginx代理时,我准备好生产了吗?我不能改变我的代码中的mothing,当然除了monkey补丁?我也可以使用默认的wsgi?然后包装成gunicorn或wsgi?感谢您已经准备好进行生产,您不必在您的代码中更改任何内容,除了monkey补丁,您也可以使用默认的flask服务器,如果这是您要问的,然后切换到uwsgi,您可以将答案标记为corect和upvote plz吗