Flask web项目 gunicorn部署
Flask web项目 gunicorn部署
安装
pip3 install gunicorn
查看版本及是否安装成功
flask --version
gunicorn -h
### 需要与app.py启动文件中的ip和端口号一致。
gunicorn -w 3 -b 外网IP地址XX.XX.XX.XX:8002 app:app
端口号的原因:端口号 > 8000
#启动报错
gunicorn -w 3 -b 0.0.0.0:5000 app:app
#本机地址启动
gunicorn -w 3 -b 127.0.0.1:8080 app:app
#ip地址启动(内网通过IP访问)
gunicorn -w 3 -b 外网IP地址XX.XX.XX.XX:8002 app:app
后台启动:
##定位到项目的目录
/usr/local/myFlask/myTestProject
##后台启动
nohup gunicorn -w 3 -b 外网IP地址XX.XX.XX.XX:8003 app:app > /dev/null 2>&1 &
查看进程
ps -ef | grep gunicorn
root 21913 5649 0 14:38 pts/0 00:00:00 /usr/bin/python3 /usr/local/bin/gunicorn -w 3 -b 外网IP地址XX.XX.XX.XX:8002 app:app
root 21916 21913 0 14:38 pts/0 00:00:00 /usr/bin/python3 /usr/local/bin/gunicorn -w 3 -b 外网IP地址XX.XX.XX.XX:8002 app:app
root 21917 21913 0 14:38 pts/0 00:00:00 /usr/bin/python3 /usr/local/bin/gunicorn -w 3 -b 外网IP地址XX.XX.XX.XX:8002 app:app
root 21918 21913 0 14:38 pts/0 00:00:00 /usr/bin/python3 /usr/local/bin/gunicorn -w 3 -b 外网IP地址XX.XX.XX.XX:8002 app:app
root 25867 28856 0 14:39 pts/1 00:00:00 grep --color=auto gunicorn
关闭进程
kill -9 21913
gunicorn作为服务器,安装gunicorn
pip3 install gunicorn
启动
gunicorn -w 3 -b 127.0.0.1:8000 app:app
-w 处理进程数
-b 运行主机ip端⼝
dpj.wsgi 项目的wsgi
gunicorn -w 10 --threads 10 -b 127.0.0.1:8000 app:app
gunicorn常用配置
-c CONFIG : CONFIG,配置文件的路径,通过配置文件启动;生产环境使用;
-b ADDRESS : ADDRESS,ip加端口,绑定运行的主机;
-w INT, --workers INT:用于处理工作进程的数量,为正整数,默认为1;
-k STRTING, --worker-class STRTING:要使用的工作模式,默认为sync异步,可以下载eventlet和gevent并指定
--threads INT:处理请求的工作线程数,使用指定数量的线程运行每个worker。为正整数,默认为1。
--worker-connections INT:最大客户端并发数量,默认情况下这个值为1000。
--backlog int:未决连接的最大数量,即等待服务的客户的数量。默认2048个,一般不修改;
-p FILE, --pid FILE:设置pid文件的文件名,如果不设置将不会创建pid文件
--access-logfile FILE : 要写入的访问日志目录 --access-logformat STRING:要写入的访问日志格式
--error-logfile FILE, --log-file FILE : 要写入错误日志的文件目录。
--log-level LEVEL : 错误日志输出等级。
--limit-request-line INT : HTTP请求头的行数的最大大小,此参数用于限制HTTP请求行的允许大小,默认情况下,这个值为4094。值是0~8190的数字。
--limit-request-fields INT : 限制HTTP请求中请求头字段的数量。此字段用于限制请求头字段的数量以防止DDOS攻击,默认情况下,这个值为100,这个值不能超过32768
--limit-request-field-size INT : 限制HTTP请求中请求头的大小,默认情况下这个值为8190字节。值是一个整数或者0,当该值为0时,表示将对请求头大小不做限制
-t INT, --timeout INT:超过这么多秒后工作将被杀掉,并重新启动。一般设定为30秒;
--daemon: 是否以守护进程启动,默认false;
--chdir: 在加载应用程序之前切换目录;
--graceful-timeout INT:默认情况下,这个值为30,在超时(从接收到重启信号开始)之后仍然活着的工作将被强行杀死;一般使用默认;
--keep-alive INT:在keep-alive连接上等待请求的秒数,默认情况下值为2。一般设定在1~5秒之间。
--reload:默认为False。此设置用于开发,每当应用程序发生更改时,都会导致工作重新启动。
--spew:打印服务器执行过的每一条语句,默认False。此选择为原子性的,即要么全部打印,要么全部不打印;
--check-config :显示现在的配置,默认值为False,即显示。
-e ENV, --env ENV: 设置环境变量;
Flask web项目 gunicorn部署的更多相关文章
- 利用eclipse新建的java web项目没有部署描述符web.xml文件怎么办?
原文转自:http://blog.csdn.net/suyu_yuan/article/details/50947007 利用eclipse新建的Java Web项目没有部署描述符web.xml文件, ...
- 服务端技术进阶(一)web项目的部署(发布)流程
web项目的部署(发布)流程 在myeclipse下新建web工程abc.系统设置默认如下: 项目保存位置:workspace目录\abc.Source文件夹:src,保存所有的java类文件(.ja ...
- 云服务器+tomcat+mysql+web项目搭建部署
云服务器+tomcat+mysql+web项目搭建部署 1.老样子,开头墨迹两句. 作为我的第二篇文章,有很多感慨,第一篇人气好低啊,有点小丧气,不过相信我还是经验少,分享的都是浅显的,所以大家可能不 ...
- Eclipse中的Web项目自动部署到Tomcat的webapp目录下
Eclipse中的Web项目自动部署到Tomcat 原因 很长时间没用Eclipse了,近期由于又要用它做个简单的JSP项目,又要重新学习了,虽然熟悉的很快,但记忆总是很模糊,偶尔犯错,以前很少写 ...
- docker 新手入门 (web项目的部署)
web项目的部署 1.首先我们下载centos镜像.docker pull centos 2.下载完成之后,我们首先要安装的是java环境 tomcat 和jdk 3.将下载好的软件放入到nmt目录 ...
- java web项目的部署
java web项目的部署 我刚开始学着编写java web项目,着实遇到不少麻烦,感觉JAVA真难侍候,好多东西都是手动.手动. 就拿这个web项目在tomcat上的部署来说吧.我在项目的build ...
- IntelliJ IDEA WEB项目的部署配置
以下内容是我网上找的比较全面了,其中关于facets配置很多地方都没有说明,其实很重要,我加入了自己的理解.其他来自网络.在导入一个项目有问题时,建议先创建一个正确的web项目,然后对比配置项,一般就 ...
- itellij idea导入web项目并部署到tomcat
概述 主要分为项目配置和tomcat配置两大步骤. 一.项目配置 打开idea,选择导入项 选择将要打开的项目路径后,继续选择项目的原本类型(后续引导设置会根据原本的项目类型更新成idea的项目),此 ...
- 在Eclipse for mac中配置tomcat,使web项目自动部署到tomcat
jdk.tomcat的配置就不多说了,网上一大堆. 一.发现问题 在eclipse中新建Dynamic Web Project,配置好本地的tomcat并写好代码后选择Run on Server,但运 ...
- Eclipse中的Web项目自动部署到Tomcat
原因 很长时间没用Eclipse了,近期由于又要用它做个简单的JSP项目,又要重新学习了,虽然熟悉的很快,但记忆总是很模糊,偶尔犯错,以前很少写博客,现在感觉还是很有必要的,编程中每个人对于犯过的错误 ...
随机推荐
- 开源微服务运行时 Dapr 发布 1.0 版本
简介: Dapr 是 2019 年 10 月开源的分布式运行时.早在 Dapr 开源初期,阿里云就开始参与 Dapr 社区建设和代码开发,目前已有两位 Dapr 成员,是 Dapr 项目中除微软之外代 ...
- DLF +DDI 一站式数据湖构建与分析最佳实践
简介: 本文由阿里云数据湖构建 DLF 团队和 Databricks 数据洞察团队联合撰写,旨在帮助您更深入地了解阿里云数据湖构建(DLF)+Databricks 数据洞察(DDI)构建一站式云上数据 ...
- 性能提升3倍、时延降低70%,阿里云企业级存储ESSD云盘再升级!
9月22日,阿里云存储年度新品发布会上,阿里云基础产品资深产品总监陈起鲲发布了其全球领先的旗舰级块存储产品ESSD的两款新规格(ESSD Auto PL.ESSD PL-X),并宣布了新增的多项企业级 ...
- [FAQ] iCloud 照片共享, 收到xx集团邀你xx, 拒绝 or 关闭 ?
如果你收到邀请日历这是垃圾邮件和简单地选择"拒绝"选项,这个问题不会消失. 事实上,很可能增加,因为垃圾邮件发送者知道该帐户被激活.这同样适用于iCloud的照片共享. 对于iCl ...
- 使用 Kafka Assistant,为您的开发加速
简要介绍 快速查看所有 Kafka 集群,包括Brokers.Topics和Consumers 支持各种认证模式:PLAINTEXT.SASL_PLAINTEXT.SSL.SASL_SSL 对Kafk ...
- LabView十六进制与字符串之间的转换
一.准备工具 Labview开发软件 字符串与十六进制的转换工具(做测试使用) 在线转换工具:IEE754浮点数16进制转换 本地工具如下图所示: 二.LabView字符串转换为十六进制 在数值中选择 ...
- SQL窗口分析函数使用详解系列三之偏移量类窗口函数
1.综述 本文以HiveSQL语法进行代码演示. 对于其他数据库来说同样也适用,比如SparkSQL,FlinkSQL以及Mysql8,Oracle,SqlServer等传统的关系型数据库. 已更新第 ...
- 通过劫持线程arena实现任意地址分配 n1ctf2018_null
通过劫持线程arena,当堆开了一个线程之后,如果没有做好保护随之的危险也悄然而至 BUU上的n1ctf2018_null很好的说明了这个问题 题目链接:BUUCTF在线评测 (buuoj.cn) 看 ...
- Golang csv操作
目录 csv读写 追加写入 追加写入封装 csv读写 封装成工具包 package utils import ( "encoding/csv" "fmt" &q ...
- 04 elasticsearch学习笔记-Rest风格说明
目录 Rest风格说明 关于文档的基本操作 添加数据PUT 查询 修改文档 删除索引或者文档 Rest风格说明 Rest风格说明 method url地址 描述 PUT localhost:9200/ ...