目录
一、整体设计目标(企业级)
二、模板一:企业级 Serverless Python 项目(AWS)
1️⃣ 技术选型(标准化)
2️⃣ 目录结构
3️⃣ template.yaml(最小可运行)
4️⃣ Lambda 入口(app.py)
5️⃣ 路由分发(router.py)
6️⃣ 依赖文件(requirements)
7️⃣ 本地运行(开发必做)
8️⃣ 部署(一条命令)
三、模板二:企业级 Web Python 项目(FastAPI)
1️⃣ 技术选型
2️⃣ 目录结构(企业标准)
3️⃣ FastAPI 入口(main.py)
4️⃣ API 示例(api/user.py)
5️⃣ requirements.txt
6️⃣ 本地启动
7️⃣ 文档自动生成
四、统一企业级最佳实践(重点)
依赖管理
环境变量
日志规范
CI/CD 必做清单
五、什么时候选 Serverless / Web?

企业级 Python 项目模板(Serverless / Web),覆盖 Serverless(AWS Lambda) 与 传统 Web(FastAPI) 两种主流形态。
一、整体设计目标(企业级)
-
统一依赖管理
-
支持多环境(dev / test / prod)
-
可 CI/CD
-
可观测(日志 / 追踪)
-
可扩展(中大型项目)
-
云原生 / Serverless Ready
二、模板一:企业级 Serverless Python 项目(AWS)
1️⃣ 技术选型(标准化)
| 层级 | 选型 |
| 运行时 | Python 3.11 |
| 框架 | AWS Lambda + API Gateway |
| IaC | AWS SAM |
| 依赖管理 | pip + requirements |
| 日志 | logging + CloudWatch |
| 配置 | 环境变量 |
| 测试 | pytest |
| 代码规范 | black + flake8 |
2️⃣ 目录结构
serverless-python-project/
├── template.yaml # SAM 模板
├── requirements.txt # 生产依赖
├── requirements-dev.txt # 开发依赖
├── src/
│ ├── app.py # Lambda 入口
│ ├── config.py # 配置加载
│ ├── router.py # 路由分发
│ ├── services/
│ │ └── user_service.py
│ ├── models/
│ │ └── user.py
│ └── utils/
│ └── logger.py
├── tests/
│ └── test_app.py
├── scripts/
│ ├── deploy.sh
│ └── local_run.sh
├── .env.example
├── .gitignore
└── README.md
3️⃣ template.yaml(最小可运行)
AWSTemplateFormatVersion: \’2010-09-09\’
Transform: AWS::Serverless-2016-10-31
Globals:
Function:
Runtime: python3.11
Timeout: 10
MemorySize: 512
Resources:
BackendFunction:
Type: AWS::Serverless::Function
Properties:
CodeUri: src/
Handler: app.lambda_handler
Events:
Api:
Type: Api
Properties:
Path: /{proxy+}
Method: ANY
4️⃣ Lambda 入口(app.py)
from router import route
from utils.logger import get_logger
logger = get_logger()
def lambda_handler(event, context):
logger.info(\”event received\”)
return



