Serverless 微服务架构设计实战

30章 · 从入门到实战
01Serverless与微服务概述
什么是Serverless 什么是微服务 为什么需要 适用场景与挑战
02核心概念与术语
FaaS / BaaS 冷启动 无状态设计 事件驱动 按需付费
03主流云平台对比
AWS Lambda Azure Functions Google Cloud Functions 阿里云/腾讯云
04开发环境搭建
安装Serverless Framework 配置云平台凭证 Hello World函数
05函数即服务(FaaS)深入
函数生命周期 触发器类型 配置(内存/超时)
06事件驱动架构
事件源与目标 事件路由/过滤 重试与死信队列
07API网关集成
RESTful API设计 网关配置 认证与授权
08无状态设计原则
为什么需要无状态 状态外移策略 会话管理最佳实践
09数据库选择与集成
关系型数据库(RDS Proxy) NoSQL (DynamoDB, MongoDB) 连接池管理
10消息队列与异步处理
SQS / SNS Kafka / RabbitMQ 扇出模式
11微服务拆分策略
领域驱动设计(DDD) 限界上下文 服务粒度控制
12服务间通信
HTTP/REST, gRPC 异步通信(事件/消息) 服务发现与负载均衡
13配置管理与服务发现
环境变量 / SSM AWS AppConfig Consul集成
14日志与监控
集中式日志(CloudWatch/ELK) 分布式追踪(X-Ray, Jaeger) 自定义指标与告警
15CI/CD流水线
自动化构建/测试/部署 蓝绿部署/金丝雀 回滚策略
16基础设施即代码(IaC)
Terraform / AWS CDK Serverless Framework YAML 版本管理
17安全最佳实践
最小权限原则(IAM) 密钥管理(KMS/Secrets Manager) 网络隔离(VPC) / WAF
18性能优化
冷启动优化(预留并发) 快照启动/依赖打包 内存与并发调优
19成本管理
成本模型分析 预算设置/优化策略 账单解读
20测试策略
单元/集成/端到端测试 模拟服务(LocalStack) Serverless Offline
21错误处理与重试机制
指数退避 幂等性设计 死信队列/断路器
22数据一致性
最终一致性 Saga模式 事件溯源 / CQRS
23多环境管理
开发/测试/预发布/生产 环境变量切换 资源命名规范
24版本管理与灰度发布
函数版本控制/别名 权重路由 A/B测试
25边缘计算与CDN
CloudFront / Lambda@Edge 边缘函数 全球加速
26容器与Serverless融合
AWS Fargate / Knative Kubernetes对比 混合部署模式
27大规模微服务治理
服务网格(Istio) 限流/熔断/降级 全链路压测
28实战案例一:无服务器电商后端
用户/商品/订单/支付服务
29实战案例二:实时数据处理管道
Kinesis + Lambda + DynamoDB + S3 数据湖
30未来趋势与总结
WebAssembly / Serverless GPU 边缘AI / 行业展望