socket代理配置:

关于uwsgi的用法,请自行百度,这里只针对socket文件和端口的不同,进行单一的记录。

这种方式启动的flask应用,由于是通过socket与nginx通信的,所以必须制定socket文件,无法进行集群部署:

uwsgi配置

[uwsgi]
#application's base folder
base = /data/www/myproject #python module to import
app = manage
module = %(app) home = %(base)/venv
pythonpath = %(base) #socket file's location
socket = /data/www/myproject/%n.sock #permissions for the socket file
chmod-socket = #the variable that holds a flask application inside the module imported at line #
callable = app #location of log files
logto = /data/www/log/uwsgi/%n.log

nginx配置:

server {
listen ;
server_name localhost;
charset utf-;
client_max_body_size 75M;
location / {
include uwsgi_params;
uwsgi_pass unix:/data/www/myproject/myproject_uwsgi.sock;
}
}

socket端口配置:

如果需要使用集群,需要使用端口来与nginx进行通信,那么uwsgi的配置就会有些许的差异:

uwsgi配置

[uwsgi]
#application's base folder
base = /data/www/myproject #python module to import
app = hello
module = %(app) home = %(base)/venv
pythonpath = %(base) #socket file's location
socket = :
#socket = /data/www/myproject/%n.sock
#permissions for the socket file
chmod-socket =
#the variable that holds a flask application inside the module imported at line #
callable = app
#location of log files
logto = /data/www/log/uwsgi/%n.log

差异就是将sock文件,改为端口,当然也可以写成如下格式:

socket = 0.0.0.0:
socket = 127.0.0.1:

那么如果nginx需要负载两台甚至多台server,就需要修改配置:

upstream ai-server {
server server1:;
server server2:;
}
server {
listen ;
server_name localhost;
charset utf-;
client_max_body_size 75M; location / {
include uwsgi_params;
uwsgi_pass ai-server;
}
}

nginx 代理flask应用的uwsgi配置的更多相关文章

  1. Windows实战(1):Nginx代理设置及负载均衡配置

    简言 以下配置实现功能: 反向代理 通过轮询的方式实现nginx负载均衡 直接看以下配置文件: #user nobody; worker_processes 1; #error_log logs/er ...

  2. 12、Nginx代理缓存服务

    通常情况下缓存是用来减少后端压力, 将压力尽可能的往前推, 减少后端压力,提高网站并发延时 1.缓存常见类型 服务端缓存 代理缓存, 获取服务端内容进行缓存 客户端浏览器缓存 Nginx代理缓存原理 ...

  3. 【翻译】使用nginx作为反向代理服务器,uWSGI作为应用服务器来部署flask应用

    最近在看关于Docker和Nginx方面的内容,先于在Docker上开发以及部署python应用自然要先能够在本机上部署,其中找到一篇文章写的最为详细并且实验成功,所以在此翻译转载过来以备后需.[原文 ...

  4. 【Flask】 利用uWSGI和Nginx发布Flask应用

    因为Flask比较容易上手,之前也拿flask写过几个小项目,不过当时天真地以为只要在服务器上nohup跑一个python脚本就算是成功发布了这个flask项目.实际上这还面临很多问题,比如并发性不好 ...

  5. 使用Flask+uwsgi+Nginx部署Flask正式环境

    环境准备 在开始正式讲解之前,我们将首先进行环境准备. Step1:安装Python,pip以及nginx: sudo apt-get update sudo apt-get install pyth ...

  6. 通过uwsgi+nginx启动flask的python web程序

    通过uwsgi+nginx启动flask的python web程序 一般我们启动python web程序的时候都是通过python直接启动主文件,测试的时候是可以的,当访问量大的时候就会出问题pyth ...

  7. nginx入门与实战 安装 启动 配置nginx Nginx状态信息(status)配置 正向代理 反向代理 nginx语法之location详解

    nginx入门与实战 网站服务 想必我们大多数人都是通过访问网站而开始接触互联网的吧.我们平时访问的网站服务 就是 Web 网络服务,一般是指允许用户通过浏览器访问到互联网中各种资源的服务. Web ...

  8. Nginx 反向代理工作原理简介与配置详解

    Nginx反向代理工作原理简介与配置详解   by:授客  QQ:1033553122   测试环境 CentOS 6.5-x86_64 nginx-1.10.0 下载地址:http://nginx. ...

  9. 在阿里云服务器上配置CentOS+Nginx+Python+Flask环境

    在阿里云服务器上配置CentOS+Nginx+Python+Flask环境 项目运行环境 阿里云(单核CPU, 1G内存, Ubuntu 14.04 x64 带宽1Mbps), 具体购买和ssh连接阿 ...

随机推荐

  1. ranch 源码分析(二)

    接上ranch 源码分析(一) 上次讲到了ranch.erl的start_listener函数,下面我们详细分析下这个函数 -module(ranch). %...... 省略若干行 -spec st ...

  2. redis的发布订阅、持久化存储、redis的主从复制

    redis的发布订阅 1. 创建redis配置文件 vim /opt/redis_conf/reids-6379.conf mkdir /data/6379 redis-server  redis-6 ...

  3. vue实现tab切换功能

    最近用vue做一个页面的tab功能,经过一查找资料,没用路由,也没用动态组件,完美实现了tab切换功能,效果如下 下面是代码实现,这是模板 <article id="example&q ...

  4. OAF 抛出html消息

    throw new oracle.apps.fnd.framework.OAException("<html><p style=\"color:#FF0000; ...

  5. bsxfun.h multiple threads backup

    https://code.google.com/p/deep-learning-faces/source/browse/trunk/cuda_ut/include/bsxfun.h?r=7&s ...

  6. jsp页面错误

    错误提示:The superclass javax.servlet.http.HttpServlet was not found on the Java Build Path. 解决办法:在build ...

  7. python全栈开发笔记----基本数据类型---列表List

    #list 是 类 ,列表 序列是Python中最基本的数据结构.序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推. Python有6个序列的内置类型,但 ...

  8. bootstrap之编译CSS和Javascript-0基础安装grunt教程

    昨天晚上看到 bootstrap 全局CSS样式中 使用Less 章节中提到的通过grunt重新编译CSS和Javascript文件,对于我这样从未接触过windows cmd node控制台 npm ...

  9. 第九节 java7JDK的常用封装类型

    一.Java Scanner类 /初始化一个 scanner 对象. Scanner scanner = new Scanner(System.in); //判断语法 boolean b = scan ...

  10. timeline server介绍

    1. timeline是什么 2. timeline能做什么 3. timeline结构 4. timeline怎么配置   1). timeline是什么? 它能存储和检索应用当前和历史信息在yar ...