gunicorn使用
文章目录
- 安装
- 配置
- 运行
安装
方式一:最简单的使用 pip 安装或者更新
pip install gunicorn
有些离线安装的场景也可心到 https://pypi.org/project/gunicorn/ 下载whl包,然后在同一目录下运行 pip install gunicorn-XXX.whl
方式二:下载源码安装
git clone git://github.com/benoitc/gunicorn.git
cd gunicorn
sudo python setup.py install
配置
py配置文件
# gunicorn_config.py
#!/usr/bin/env python
# -*- coding: utf-8 -*
# Author: renoyuan
# e_mail: renoyuan@foxmail.comimport logging
import logging.handlers
from logging.handlers import WatchedFileHandler
import os
import multiprocessing
bind = '0.0.0.0:7088' # 绑定ip和端口号
backlog = 512 # 监听队列
chdir = '/root/zj/HTTP_SET' # gunicorn要切换到的目的工作目录
timeout = 30 # 超时 s
worker_class = 'gevent' # 使用gevent模式,还可以使用 sync 模式,默认的是sync模式
daemon = True # 后台运行 默认False
# worker_class = 'sync'
pidfile = f"{chdir}/gunicorn.pid"
workers = 3 # 进程数
# workers = multiprocessing.cpu_count() * 2 + 1 #进程数
threads = 1 # 指定每个进程开启的线程数
loglevel = 'info' # 日志级别,这个日志级别指的是错误日志的级别,而访问日志的级别无法设置
access_log_format = '%(t)s %(p)s %(h)s "%(r)s" %(s)s %(L)s %(b)s %(f)s" "%(a)s"' # 设置gunicorn访问日志格式,错误日志无法设置"""
其每个选项的含义如下:
h 地址
l '-'
u currently '-', may be user name in future releases
t 日期时间
r 接口信息
s http status
b 响应长度 or '-'
f referer
a 用户代理
T 请求耗时/s
D 请求耗时/毫秒
L 请求耗时精确地/s
p 进程 ID
"""
accesslog = f"{chdir}/gunicorn_access.log" # 访问日志文件
errorlog = f"{chdir}/gunicorn_error.log" # 错误日志文件
ini 配置文件
[server:main]
use = egg:gunicorn#main
host = 192.168.0.1
port = 80
workers = 2
proc_name = brim
运行
方式一
nohup gunicorn -c gunicorn_config.py http_test_main:app &
方式二
gunicorn -c gunicorn_config.py -D http_test_main:app
参数含义
// --version 查看版本
// -h 查看帮助文档
// -c or --config 加载配置文件
// -D or daemon 后台运行
// -p or --pid FILE 指定pid 文件
// 加载wsgi 对象 flask 框架为app 对象DJANGO 为 appName.wsgi:application
http_test_main:app
gunicorn使用相关推荐
- CentOS6.5下Gunicorn+Django+nginx部署的过程
2019独角兽企业重金招聘Python工程师标准>>> 本文假设你已经在CentOS下使用Python manage.py runserver 0.0.0.0:8080,能够顺利跑起 ...
- gunicorn源码分析
服务器端编程(linux epoll模型) #!/usr/bin/env python#-*- coding:utf-8 -*-import socketimport selectimport Que ...
- 基于docker+gunicorn部署sanic项目
基于docker+gunicorn部署sanic项目 源代码: https://github.com/ltoddy/Python-useful/tree/master/sanic-app 最近云服务提 ...
- Flask+gunicorn部署HTTP服务
FLASK Flask提供了HTTP开发服务的框架,但是他本身不提供HTTP Server.内部集成的一个简单的Server只是用于开发调试. Flask内部的HTTP服务只用于开发使用,在启动Fla ...
- 服务器运行码用户名a多少呢,如何以非根用户身份运行gunicorn/a python应用服务器?...
我建议使用supervisord.管理员在启动时告诉你的用户帐户下启动你的应用程序. 这是我的my_app.conf,我放在/etc/supervisor/conf.d/下:[program:my_a ...
- nginx + gunicorn + django的简单部署
sudo apt-get install nginxcd /etc/nginx/sites-availablesudo vim default 原本是想安装Image包,但是百度的方法都乱七八糟的不能 ...
- flask+gunicorn+supervisor+nginx环境安装,裸Centos
裸centos的一些安装部署 1.安装python-pip 首先安装epel扩展源:yum -y install epel-release更新完成之后,安装pip:yum -y install pyt ...
- 分享:Gunicorn 0.17 发布,Python HTTP 服务器
Gunicorn 0.17 发布,Python HTTP 服务器 http://www.oschina.net/news/36142/gunicorn-0-17
- python diango 并发_利用gunicorn提高django的并发能力
引言 手头上的项目有一些采用django框架编写, 如果说并发量比较小的时候简单的runserver是可以应对的. 那么当并发达到一两千的时候,该怎么提高django的并发能力呢? Overview ...
- 阿里云ECS上环境搭建(virtualenv+flask+gunicorn+supervisor+nginx)
阿里云ECS目前有新用户免费半年使用的活动,就利用闲暇时间申请了一台,具体申请可到http://free.aliyun.com/?spm=5176.383518.1.28.OXp5YZ. 我选择的配置 ...
最新文章
- NBT:王运浩、区健辉等综述纳米孔测序技术
- jQuery - AJAX 简介
- ashx+jQuery,一个轻量级的asp.net ajax解决方案
- 前端学习(2752):global全局设置
- MySQL数据以全量和增量方式,向ES搜索引擎同步流程
- 判断某个磁盘中是否有某个文件
- radiobutton 设置为不能点击_谷歌要求:安卓 11 相机默认不能设置为“美颜”模式...
- 通过使用 NTLite 工具实现精简Windows系统
- MySQL中用生日计算年龄
- 干货丨DolphinDB即时编译(JIT)详解
- 基于ThinkPHP的图书馆管理系统 毕业设计-附源码311833
- 【解决方案】关于自动生成表hibernate_sequence的问题
- ipad接受airdrop_如何在iPhone,iPad和Mac上使用AirDrop即时共享文件
- 傅里叶变换、拉普拉斯变换、z变换之间的联系
- 最近发现一个很好的网站-夏泽网,超链接如下:
- 学习linux杂七杂八——关于shell中的变量
- 2021手机试玩平台《手赚网》源码
- 2021.3.1版本idea搭建springMVC项目时出现的问题及解决
- 手工玫瑰花_布艺玫瑰花的做法教你手工制作布艺玫瑰花的折法图解教程
- Vuex _ 核心插件