Nginx + Gunicorn + Python Web 应用 架构(Claude)

下面是各层的核心要点:

Nginx(反向代理层) :暴露在公网,监听 80/443 端口。负责 SSL 终止、直接服务静态文件(/static/、/media/),以及将动态请求通过 Unix Domain Socket(或 TCP 端口)转发给 Gunicorn,同时可配置限流和负载均衡。

Gunicorn(WSGI 服务器层) :运行在内网,由一个 Master 进程 fork 出多个 Worker 进程(通常配置为 2×CPU核数 + 1)。每个 Worker 是独立的 Python 进程,处理一个并发请求。Master 负责监控 Worker 存活和优雅重启。

Python WSGI 应用层 :Flask / Django / FastAPI(配合 uvicorn 则是 ASGI)。Gunicorn 按照 PEP 3333 规范调用应用的 __call__ 入口,传入 environ 和 start_response,应用返回响应体迭代器。

数据层:应用通过 ORM(SQLAlchemy、Django ORM)访问关系型数据库,通过 redis-py 访问缓存/队列,通过 boto3 等 SDK 访问对象存储。


典型进程通信方式对比:

方式 延迟 适用场景
Unix Socket 最低 Nginx 与 Gunicorn 在同一机器
TCP 127.0.0.1:8000 略高 容器间通信或跨机部署

Systemd 管理建议 :Nginx 和 Gunicorn 各自独立注册为 systemd service,通过 socket activation 可以实现零停机重启。

相关推荐
怕浪猫8 小时前
RAG 面试 6 连问,从原理到优化全部覆盖
python·算法·面试
高洁018 小时前
具身智能中的世界模型训练
人工智能·python·深度学习·机器学习·transformer
无线通信科研笔记8 小时前
IEEE TVT 2026 论文精读与完整复现|相位误差如何重塑近场 RIS 的幅相响应
论文阅读·人工智能·python·算法·论文笔记
朝朝辞暮i8 小时前
VLA 系统学习第 1 课:VLA 到底在干什么?
人工智能·python·计算机视觉·vla
2601_962885729 小时前
如何用 Python 自动识别股票的支撑位与压力位?
开发语言·python
北冥有鱼被烹9 小时前
VCSEL全景解析:与光模块NPO CPO的关系、市场量化分析与产业链影响
python
caoerzhong10 小时前
中小企业上 WMS 该先上哪几块:JeeWMS 开源 Java 仓库管理系统的分批上线清单
java·python·开源
正在走向自律10 小时前
AI数据分析与可视化:从基础到应用实践
服务器·人工智能·python·机器学习·数据分析·pandas
databook10 小时前
从手动检查到自动监控:一个数据质量工作流的实现
后端·python·数据分析
北冥有鱼被烹13 小时前
砷化镓与磷化铟:光模块的地基——从化学键到AI缺货潮的底层逻辑
人工智能·python