Serverless 微服务架构设计实战
30章 · 从入门到实战
01
Serverless与微服务概述
什么是Serverless
什么是微服务
为什么需要
适用场景与挑战
02
核心概念与术语
FaaS / BaaS
冷启动
无状态设计
事件驱动
按需付费
03
主流云平台对比
AWS Lambda
Azure Functions
Google Cloud Functions
阿里云/腾讯云
04
开发环境搭建
安装Serverless Framework
配置云平台凭证
Hello World函数
05
函数即服务(FaaS)深入
函数生命周期
触发器类型
配置(内存/超时)
06
事件驱动架构
事件源与目标
事件路由/过滤
重试与死信队列
07
API网关集成
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)
自定义指标与告警
15
CI/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 / 行业展望