python flask应用部署
失败版本:flask+uwsgi
ini配置文件
[uwsgi]
callable = app ;//程序内启用的application变量名
home = /home/jcuan/code/python/project/venv ;如果是venv环境下,一定要设置路径
pythonpath = /home/jcuan/code/python/project/venv ;可以设置pythonpath的路径,flask命令行会自动设置一些路径(比如我的自动设置了: /home/jcuan/code/python/project/venv),注意这个不会
socket = /tmp/uwsgi.sock ; 启动程序时所使用的地址和端口,可以采用端口或者unix socket
wsgi-file = /home/jcuan/code/python/project/venv/application/__init__.py ;flask程序的启动文件,这个文件里不需要有app.run(),有了反而会出错
processes = 4 ;//处理器个数
threads = 2 ;//线程个数
不知道是有什么特殊原因:1,callable不能在ini文件里配置,不管配置什么都是默认的application;2,chmod-sock在ini里配置无效
运行
uwsgi --plugin python --ini uwsig.ini --callable app --chmod-sock=666
nginx的文件配置大概如下(location是/,不会分别配置。。):
location / {
include uwsgi_params;
uwsgi_pass unix:/tmp/uwsgi.sock;
}
虽然可以运行,不过我在__init__.py里面import的视图函数统统没有起作用,虽然绑定了,但是访问对应的url是404,只有定义在__init__.py的视图函数才起作用
成功版本flask+gunicorn
gunicorn.conf的基本配置,注意字符串都要用引号包含起来
注意这个地方也有坑,不要把sock文件放在/tmp目录下,最好放/run等目录下,因为服务器的原因,/tmp目录下文件可能只对特定的服务可见。
your system probably using namespaced temporary directories, which means every service can only see its own files in /tmp
workers = 3 #进程数
timeout = 30 #超时
bind = 'unix:/tmp/flask.socks' #nginx监听位置
backlog = 1000 #监听队列长度
然后又进入了一个坑,nginx那边的超简化版配置应该像这样
server {
listen 80;
server_name 127.0.0.1;
location / {
include proxy_params; #这里边设置了一些代理需要转换的头,比如得到真实ip, proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://unix:/tmp/flask.sock; #很奇葩,我一直写的是unix:/tmp/flask.sock,然后一直都不对
}
}
运行l类似下边的命令就可以了gunicorn --config application/gunicorn.conf application:app。application:我的应用所在包的名字,app,flask启动文件中Flask实例变量的名字
python flask应用部署的更多相关文章
- 【Azure 应用服务】Python flask 应用部署在Aure App Service中作为一个子项目时,解决遇见的404 Not Found问题
问题描述 在成功的部署Python flask应用到App Service (Windows)后,如果需要把当前项目(如:hiflask)作为一个子项目(子站点),把web.config文件从wwwr ...
- Python flask网站部署总结
先开一贴,有空来总结下前段时间的网站部署情况.此次部署采用Gunicorn + Nginx + supervisor的组合在VPS环境中部署flask网站应用. Ubuntu环境准备 准备python ...
- 【Azure 应用服务】Python flask 应用部署在Aure App Service 遇见的 3 个问题
在App Service(Windows)中部署Flask应用时的注意事项: ● 添加Python扩展插件,Python 3.6.4 x64: ●● 配置 FastCGI 处理程序,添加Web.con ...
- 使用wfastcgi在IIS上部署Python Flask应用
本文介绍了如何在Windows上部署Python Flask应用,相关环境如下: 操作系统:windows 7 Python:3.4 WFastCGI: 2.2 应用所用到的包版本如下: Flask= ...
- 使用Nginx+Uwsgi部署Python Flask项目
第一次用Flask做Web(也是第一次用Python做Web),在部署的时候遇到了不少问题,现在将过程就下来,供在这方面也有疑惑的人参考.(PS:使用Apache+mod_wsgi部署模式的可以参考另 ...
- Python FLask 腾讯云服务器部署
CentOs 7.0云服务器部署Python Flask 使用: Python 2.7 Flask nginx gunicorn easy_install python-dev yum install ...
- 【问题记录】uwsgi部署并启动俩个几乎一样的python flask web app,发现有一个app响应时间非常长
uwsgi在同一台linux上启动python flask web app(俩个), 发现第一个和第二个的简单性能测试差距非常大,差了将近一倍: 第一个结果: Concurrency Level: 1 ...
- 细数Python Flask微信公众号开发中遇到的那些坑
最近两三个月的时间,断断续续边学边做完成了一个微信公众号页面的开发工作.这是一个快递系统,主要功能有用户管理.寄收件地址管理.用户下单,订单管理,订单查询及一些宣传页面等.本文主要细数下开发过程中遇到 ...
- flask项目部署到阿里云 ubuntu16.04
title: flask项目部署到阿里云 ubuntu16.04 date: 2018.3.6 项目地址: 我的博客 部署思路参考: Flask Web开发>的个人部署版本,包含学习笔记. 开始 ...
随机推荐
- Silverlight:版本控制的衍化
版本控制是企业开发中一个老生长谈的主题,这也是大部分公司新人进来后需要接纳的一个基础知识体系. 从08年首次接触商业软件编写后,这几年先后接触了SVN,TFS,Git这几个主要的版本控制器,但是并没有 ...
- Linux和UNIX监控
Linux和UNIX上的数据库监控工具包括监控CPU.内存.磁盘.网络.安全性和用户的监控工具.下面罗列了我们找到的有用工具及其简单描述. ps 显示系统上运行的进程列表 top ...
- Spark源码系列(四)图解作业生命周期
这一章我们探索了Spark作业的运行过程,但是没把整个过程描绘出来,好,跟着我走吧,let you know! 我们先回顾一下这个图,Driver Program是我们写的那个程序,它的核心是Spar ...
- 使用Object的wait,notify,notifyAll做线程调度
我们知道java中的所有类的祖先都是Object,Object类有四个个方法wait(),wait(long timeout),notify(),notifyAll(),这四个方法可以用来做线程的调度 ...
- iframe高度宽度自适应(转)
http://www.cnblogs.com/snandy/p/3900016.html 跨子域的iframe高度自适应 完全跨域的iframe高度自适应 同域的我们可以轻松的做到 1. 父页面通过i ...
- Windows batch,echo到文件不成功,只打印出ECHO is on.
jenkins 执行Windows batch command的时候,如果想要读写文件,echo到文件不成功. bat 代码如下: set ctime=%date%_%time% echo %ctim ...
- Lua基础
局部定义与代码块: 使用local声明一个局部变量或局部函数,局部对象只在被声明的那个代码块中有效. 代码块:一个控制结构.一个函数体.一个chunk(一个文件或文本串)(Lua把chunk当做函数处 ...
- C#中处理耗时任务的几种方式
0.准备 首先,我们先创建几个耗时任务: public class TestTasks { //无参.无返回值任务 public void Task1() { Console.WriteLine(&q ...
- MongoDB入门三:MongoDB shell
MongoDB shell MongDB shell是一个功能完备的Javascript解释器,可以运行Javascript程序.也可以用于连接MongoDB服务器,执行脚本,对数据库进行操作.类似于 ...
- perl基本语法--转载
http://www.cnblogs.com/zhtxwd/archive/2012/03/06/2381585.html 本文介绍从变量类型.操作运算符.控制叙述.子程序.I/O和档案处理. Reg ...