• python flask 部署


      flask在开发的时候,经常启动本身进行调试(本身可以设置监听的端口,例如 在app.run(port=8088),当然默认不设置端口为5000)。

      但生产环境经常使用uswgi充当flask的宿主,然后使用nginx 转跳uswgi,因为本身uswgi处理静态文件功能并不强大,通常nginx会把单独处理css,js等文件,将flask的请求 转跳到 uswgi上.

       

      nginx转跳uswgi也有2种方式

          一种是负载的http转跳,

          还有一种是 socket的转跳.

       关于2种方案的区别:

       http转跳时需要配置一些独立的head,因为如果你的程序如果需要获取用户的ip 之类的,拿到的是nginx机器的地址。

       而socket链接方式 你就不用担心了。你可以认为这是直接请求道uswgi.

        

    server {
        listen       80;
        server_name  test.com;
    
        #access_log /var/logs/access.log;
        #error_log /var/logs/error.log;
      #ps:以下为 2种配置请选一种
        location / {
            include uwsgi_params;
            uwsgi_pass 127.0.0.1:8088;
        }
      location / {
            proxy_pass http://127.0.0.1:8088;
        } 
      access_log off;
    }

       (注释:http转跳是配置 “proxy_pass 127.0.0.1:8088” 这种方式 ,socket转跳 是通过 "uwsgi_pass 127.0.0.1:8088" ,同时 这2中方式需要 在配置uswgi时设置 uwsgi --socket 8088 或者 uwsgi --http 8088)

      通常flask 配置  uwsgi --socket 127.0.0.1:3031 --wsgi-file myflaskapp.py --callable app --processes 4 --threads 2 --stats 127.0.0.1:9191

  • 相关阅读:
    python+webdriver(二)
    python+webdriver(一)
    重逢
    在C,C++,java和python运行时解释器和编译器的区别
    hive调优
    github 操作指南
    jupyter 启动时的问题
    海量数据模型实施方法论
    python之Tkinker学习
    使用cmd命令行进行本地证书读取
  • 原文地址:https://www.cnblogs.com/rufus-hua/p/4877443.html
Copyright © 2020-2023  润新知