gunicorn常用参数命令

5 篇文章 0 订阅
2 篇文章 0 订阅
Gunicorn是一个PythonWSGIHTTP服务器,适用于简单、轻量级且高性能的场景。文章介绍了如何安装Gunicorn,以及如何启动和配置Django项目的Gunicorn服务,包括设置绑定地址、工作进程数、日志级别等。此外,还提到了使用nohup进行后台运行以及日志管理的方法,以及通过nginx进行反向代理的可能性。
摘要由CSDN通过智能技术生成

Gunicorn 是一个 Python 的 WSGI HTTP 服务器。具有实现简单,轻量级,高性能等特点。更多介绍内容参考官网,这里介绍几个常用参数。

安装

pip3 install gunicorn

通过输入gunicorn -v查看版本。

最简洁的启动。首先进入到项目目录,例如django项目和manage.py同级目录。

gunicorn <your_project>.wsgi:application --bind 127.0.0.1:8000

其中gunicorn为启动gunicorn服务器。<your_project>则为你的项目名称如faloo_hero。如
在这里插入图片描述
这样启动只有一个进程,开启多进程的参数为–workers=

gunicorn --bind 0.0.0.0:8000 faloo_hero.wsgi:application --workers=4

如上命令就启动了4个并行进程。线上环境通常推荐进程数为cpu数量*2+1 。

上述启动仍然有明显的问题,就是会占用一个终端会话。导致没法执行其他命令,除非用Ctrl+C退出进程。改为为守护进程加上参数nohup &

nohup gunicorn --bind 0.0.0.0:8000 faloo_hero.wsgi:application --workers=4 &

如上命令执行完后我们仍然可以继续在这个终端执行其他命令。
``上述启动之后缺乏日志跟踪,加上如下参数

nohup gunicorn --bind 0.0.0.0:8000 faloo_hero.wsgi:application --log-level=info --workers=4>run.log 2>&1 &

其中–log-level=info为开启日志,通常生产环境为info级别,调试为debug级别。run.log 2>&1 是将标准输出重定向到 run.log 文件中
–log-level 是 设置日志级别的参数,具有以下可选值:

debug:最详细的日志记录级别,通常仅在开发和调试阶段使用。
info:普通信息记录级别,通常用于生产环境中的正常操作和事件记录。
warning:警告记录级别,表示一些不寻常但不是错误的情况。
error:错误记录级别,表示出现错误或异常。
critical:严重错误记录级别,表示可能导致应用程序崩溃的问题。

以上命令会在每次启动的时候重写run.log,如果我们想要追加的方式则只需要在将4后面的>参数改为>>。

nohup gunicorn --bind 0.0.0.0:8000 faloo_hero.wsgi:application --log-level=info --workers=4 >> run.log 2>&1 &

效果如下图
在这里插入图片描述可以查看一下我们的gunicorn进程情况
在这里插入图片描述

其中,一个 Gunicorn 的主进程, 4 个进程是 Gunicorn 的 worker 进程。
使用cat run.log查看日志:
在这里插入图片描述
通过nginx代理或者对外开放该端口。打开网站查看运行情况
在这里插入图片描述
还有更多参数做更多的事情,读者可自行尝试。可参考nginx配置详解

### 回答1: 在安装了 Gunicorn 和 Flask 之后,你可以使用 Gunicorn启动 Flask 应用。 示例命令如下: ``` gunicorn --bind 0.0.0.0:8000 --workers 4 myapp:app ``` 其中,`myapp` 是你的 Flask 应用所在的模块,`app` 是你的 Flask 应用实例。 `--bind` 参数用于指定 Gunicorn 应监听的地址和端口。 `--workers` 参数用于指定 Gunicorn 应使用的工作进程数量。 你也可以使用其他的命令参数来调整 Gunicorn 的行为,例如 `--timeout` 参数用于设置超时时间,`--log-level` 参数用于设置日志记录的级别。 更多的命令参数的信息,可以在 Gunicorn 文档中找到。 ### 回答2: 使用Gunicorn启动Flask应用的示例命令如下: ``` gunicorn -w 4 -b 0.0.0.0:8000 app:app ``` 这个命令中,`gunicorn` 是 Gunicorn命令行工具,`-w` 用于指定工作进程的数量,这里是4个工作进程。`-b` 用于指定绑定的IP地址和端口号,这里是绑定在0.0.0.0的8000端口上。`app:app` 表示启动的主应用文件(app.py)中的 Flask 应用。请注意,如果你的主应用文件名不是 app.py,那么需要将这个参数修改为相应的文件名。 执行这个命令后,Gunicorn启动 Flask 应用,并监听在指定的地址和端口。你可以根据需要在后面添加其他参数,以满足你的应用需求。启动成功后,你可以在浏览器中访问 http://localhost:8000 来查看你的 Flask 应用。 ### 回答3: 使用Gunicorn启动Flask应用的示例命令如下: 假设Flask应用的文件名为app.py,应用的主要逻辑在名为app的Flask实例中。 首先,确保已经安装了Gunicorn。可以使用以下命令安装: ```shell pip install gunicorn ``` 接下来,在终端中切换到Flask应用所在的目录,然后运行以下命令启动Flask应用: ```shell gunicorn app:app ``` 在上述命令中,第一个app表示要运行的Python模块名(即Flask应用所在的Python文件名,不包括.py扩展名);第二个app表示Flask应用的实例名。 默认情况下,Gunicorn将在本地主机的8000端口上启动Flask应用。可以通过添加`-b`选项指定要使用的IP地址和端口。例如,要在IP地址为127.0.0.1、端口为5000的位置启动Flask应用,可以运行以下命令: ```shell gunicorn -b 127.0.0.1:5000 app:app ``` 运行上述命令后,Gunicorn启动Flask应用,并在终端显示相关日志。此时,可以通过将浏览器访问http://127.0.0.1:5000来验证Flask应用是否正常运行。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值