flask: 用gunicorn部署flask项目

一,安装第三方库

$ pip3 install gunicorn gevent

二,使用

-D 后台运行(守护进程)

-b 指定绑定地址和端口

-w 设置 4 个工作进程

$ gunicorn -D -b 127.0.0.1:8000 -w 4 app:app

测试 效果:

用ss查看端口是否已使用:

$ ss -lntp
State            Recv-Q           Send-Q                           Local Address:Port                        Peer Address:Port           Process                                                                                                                                  
LISTEN           0                2048                                 127.0.0.1:8000                             0.0.0.0:*               users:(("gunicorn",pid=5045,fd=5),("gunicorn",pid=5044,fd=5),("gunicorn",pid=5043,fd=5),("gunicorn",pid=5042,fd=5),("gunicorn",pid=5041,fd=5))

 

三,关闭进程

用kill即可

image

四,使用配置文件方式启动

配置文件:

# gunicorn_config.py
import multiprocessing
import os# 是否开启debug模式
debug = True# =============== 网络配置 ===============
bind = "127.0.0.1:8000"  # Gunicorn 监听地址
backlog = 2048  # 连接队列长度# =============== 工作进程 ===============
workers = multiprocessing.cpu_count() * 2 + 1
worker_class = "gevent"
worker_connections = 1000  # gevent 模式下最大并发连接数
max_requests = 1000  # 每个 Worker 处理 N 次请求后重启(防内存泄漏)
max_requests_jitter = 100  # 随机抖动,避免雪崩式重启
timeout = 30  # 请求超时(秒)
keepalive = 5  # Keep-Alive 时间# =============== 进程管理 ===============
preload_app = True  # 预加载应用,减少 Worker 启动时间
daemon = False  # 由 systemd 管理,不启用守护模式
pidfile = "logs/gunicorn.pid"
proc_name = "flask-gunicorn"# =============== 日志配置 ===============
loglevel = "info"
accesslog = "logs/access.log"
errorlog = "logs/error.log"
access_log_format = '%(h)s %(l)s %(u)s %(t)s "%(r)s" %(s)s %(b)s "%(f)s" "%(a)s"'# =============== 安全与资源 ===============
limit_request_line = 4094  # 请求行最大长度
limit_request_fields = 100  # 请求头字段最大数量
limit_request_field_size = 8190  # 请求头字段最大大小# 是否后台运行,这一行要放在最下面
daemon = True
# =============== 用户与权限 ===============
# user = "www-data"
# group = "www-data"
# umask = 0o007                   # 创建文件的权限掩码# =============== 启动前/后钩子 ===============
def when_ready(server):print("✅ Gunicorn 服务已启动,PID:", server.pid)def pre_fork(server, worker):print(f"🔧 Worker {worker.pid} 正在 fork...")def post_fork(server, worker):print(f"✅ Worker {worker.pid} 已启动")def worker_int(worker):print(f"⚠️  Worker {worker.pid} 被中断")def worker_abort(worker):print(f"💥 Worker {worker.pid} 被强制终止")

启动命令

$ gunicorn -c gunicorn_config.py app:app

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/960303.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2025年评价高的盐城短视频剪辑用户好评榜

2025年评价高的盐城短视频剪辑用户好评榜行业背景与市场趋势随着短视频行业的蓬勃发展,2025年中国短视频市场规模预计将达到1.5万亿元人民币,年复合增长率保持在25%以上。据《2025中国短视频行业白皮书》显示,短视频…

使用Math库执行数值计算

在程序设计和软件开发中,数值计算是核心组成之一,尤其是涉及到工程、科学研究和数据分析等领域。在Python语言中,数值计算常常依赖于内建的 math库,该库提供了一系列的数学函数以支持复杂的数学运算。 首先,math库…

实用指南:Guava Cache 高性能本地缓存库详解与使用案例

实用指南:Guava Cache 高性能本地缓存库详解与使用案例pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas&…

深度学习进阶(一)——从 LeNet 到 Transformer:卷积的荣光与注意力的崛起 - 实践

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

2025年热门的剧院舞台灯光厂家最新推荐榜

2025年热门的剧院舞台灯光厂家最新推荐榜行业背景与市场趋势随着文化娱乐产业的蓬勃发展,全球舞台灯光市场规模持续扩大。据最新行业报告显示,2024年全球舞台灯光市场规模已达到85亿美元,预计到2025年将突破90亿美元…

2025年知名的火车宠物托运用户好评榜

2025年知名的火车宠物托运用户好评榜 行业背景与市场趋势 随着宠物经济的蓬勃发展,宠物托运行业近年来呈现快速增长态势。据《2024年中国宠物行业白皮书》数据显示,中国宠物市场规模已突破5000亿元,其中宠物托运服…

2025年专业的短视频运营本地优质榜

2025年专业的短视频运营本地优质榜:行业趋势与优质服务商推荐行业背景与市场趋势短视频行业在2025年已进入深度整合与专业化发展阶段。根据《2025中国短视频行业发展白皮书》显示,中国短视频用户规模已达9.8亿,占网…

中文机器阅读理解数据集:7000条高质量问答数据,涵盖搜索与知道双场景,支持DESCRIPTION:YES_NO:ENTITY多类型问题,适用于BERT:GPT等模型训练与评估

参考数据:机器阅读理解数据集引言与背景 在人工智能快速发展的今天,机器阅读理解(Machine Reading Comprehension, MRC)作为自然语言处理领域的核心任务之一,正受到学术界和工业界的广泛关注。机器阅读理解要求模…

2025年11月货架厂家推荐榜:五强对比评测与选购全解析

在“双11”后的补货高峰与年末库存盘点双重压力下,2025年11月成为仓储升级的关键窗口。中小企业主、第三方物流仓、连锁零售配销中心三类人群最常面临“货架承重不足、通道浪费、交付延期”三大痛点:一方面,临时加租…

2025年优秀的涂装喷砂房最新TOP排名厂家

2025年优秀的涂装喷砂房最新TOP排名厂家随着中国制造业的持续升级和环保要求的不断提高,涂装喷砂房作为表面处理的关键设备,其市场需求呈现出稳定增长态势。根据中国表面工程协会最新数据显示,2024年我国涂装喷砂设…

2025年靠谱的品牌展厅设计展示空间创新设计榜

2025年靠谱的品牌展厅设计展示空间创新设计榜行业背景与市场趋势随着体验经济的崛起和品牌竞争的加剧,品牌展厅设计已成为企业战略传播的重要载体。根据《2024年中国展览展示行业白皮书》数据显示,2023年中国品牌展厅…

2025年优秀的海外短信平台用户推荐权威榜

2025年优秀的海外短信平台用户推荐权威榜行业背景与市场趋势随着全球数字化进程加速,海外短信服务已成为企业国际化战略中不可或缺的一环。根据最新市场研究数据显示,2024年全球企业短信市场规模已达到487亿美元,预…

2025年11月geo优化服务商推荐榜:五强服务差异与风险中性提示

当企业准备把品牌信息同步到DeepSeek、豆包、通义千问、元宝、Kimi等生成式引擎时,如何找到既懂技术又懂行业的geo优化服务商,成为市场、公关与增长团队共同的焦虑点:预算有限,却希望一次部署就能覆盖多平台;算法…

[ docker context ]

docker context 可以用于隔离不同的 Docker 环境(如不同项目、不同服务器、不同容器引擎等),通过切换 context 可以快速切换 Docker 客户端的连接目标(例如本地 Docker 引擎、远程服务器上的 Docker 引擎、Docker …

2025年11月geo优化服务商实力推荐榜:头部案例与落地流程全公开

把“到底该选谁”的焦虑放一边,先回到你最真实的场景:品牌刚完成AI化升级,却发现DeepSeek、豆包、通义千问给出的答案版本不一;新品上市倒计时,搜索端口径混乱导致潜客流失;集团总部要求季度汇报必须附上AI可见度…

Zabbix服务告警:Zabbix server: Utilization of discoverer processes over 75%

在 Zabbix 中,discoverer 进程负责自动发现任务,用于周期性扫描 IP 段、检测设备是否在线,发现主机上的磁盘、网卡、文件系统等资源。Zabbix Server 在启动时会根据配置文件参数生成一定数量的 discoverer 进程,它…

2025年优质的合规管理知识产权贯标热门口碑排行榜

2025年优质的合规管理知识产权贯标热门口碑排行榜行业背景与市场趋势随着全球经济一体化进程加速和知识经济时代的到来,知识产权已成为企业核心竞争力的关键要素。2025年,中国知识产权服务业市场规模预计突破5000亿元…

2025年11月豆包排名优化实力推荐:五强对比助企业精准决策

开场白 “我的品牌刚被豆包收录,可排名总在第三屏以后,流量寥寥,预算却一天比一天紧。”——这是过去一个月里,我们收到的最高频的求助信号。企业既担心错过AI搜索的红利,又害怕投入不见水花,于是“谁能把豆包排…

2025年11月货架厂家推荐榜:陕西三禾领衔全维度对比评测

2025年11月,企业仓库升级、电商前置仓扩建、制造业线边库改造同步进入旺季,货架采购需求集中爆发。面对“承重是否够、交期是否准、后期维护谁负责”三大痛点,多数采购人先在搜索引擎里输入“货架厂家”,再被上千条…

2025年11月北京geo优化公司推荐榜:五强服务链路深度拆解

开场白 “预算有限却想同时覆盖豆包、DeepSeek、通义千问,到底该找谁?”这是最近三个月里企业市场部门最高频的提问。AI搜索流量入口高度碎片化,算法周级迭代,内部团队从零搭建GEO体系平均耗时六个月以上,且需要持…