赞
踩
yum -y install zlib* gcc-c++
mkdir /usr/local/python3
cd /usr/local/python3
wget --no-check-certificate https://www.python.org/ftp/python/3.7.9/Python-3.7.9.tgz
tar -xzvf Python-3.7.9.tgz
cd Python-3.7.9
# 如果此命令报错,则可能是没有安装gcc库,安装即可
# 安装命令 yum install gcc-c++
# configure: error: no acceptable C compiler found in $PATH
./configure --prefix /usr/local/python3/
make & make install
ln -s /usr/local/python3/bin/python3 /usr/bin/python3
mkdir /usr/local/pip3
cd /usr/local/pip3
wget --no-check-certificate https://github.com/pypa/pip/archive/9.0.1.tar.gz
tar -zvxf 9.0.1.tar.gz
cd pip-9.0.1
python3 setup.py install
#这一步是什么意思呢
#python setup.py install包括两步:python setup.py build, python setup.py install,这两步,可分开执行, 也可只执行python setup.py install, 因为python setup.py install总是会先build后install.
#python setup.py build 是python编译这个module的过程, 这个过程比较复杂,最后会生成build文件夹。除去build过程后的install过程,就是复制build/lib文件到用户指定的lib库。
ln -s /usr/local/python3/bin/pip /usr/bin/pip3
pip install gunicorn
ln -s /usr/local/python/bin/gunicorn /usr/bin/gunicorn
gunicorn -v
pip install flask
http://127.0.0.1:5000
gunicorn可以配置一些额外参数,格式如下:
gunicorn -w 进程数量 -b 监听地址:监听端口 运行文件名称:Flask程序实例名
例如:
gunicorn -w 4 -b 0.0.0.0:8080 app:app -D
-D
表示将gunicorn置于后台运行
执行pip install gevent
安装依赖包。
gunicorn可以通过执行配置文件来完成启动,配置文件如下
# gun.py import logging import logging.handlers import os import multiprocessing import gevent.monkey gevent.monkey.patch_all() bind = '0.0.0.0:8080' # 绑定的ip已经端口号 chdir = '/home/flaskProject' # gunicorn要切换到的目的工作目录 timeout = 60 # 超时 worker_class = 'gevent' # 使用gevent模式,还可以使用sync 模式,默认的是sync模式 workers = multiprocessing.cpu_count() * 2 + 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访问日志格式,错误日志无法设置 pidfile = "gunicorn.pid" accesslog = "access.log" errorlog = "error.log" daemon = True # 是否后台运行
执行gunicorn -c gun.py app:app
启动应用程序,
启动后项目的目录下会生成access.log
,error.log
和gunicorn.pid
三个文件,gunicorn.pid
中保存了gunicorn的主进程PID号,可以通过cat gunicorn.pid
查看,当想要停止gunicorn时,直接kill 进程号
即可杀死所有gunicorn进程。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。