CodeRoadMap
首页路线题库资源库文章社区
CodeRoadMap

程序员的学习成长路线图。内容免费开放,登录后可同步路线图与课时进度。

由 程序员柏风 独立维护 · 关于作者

学习

  • 路线图
  • 课程
  • 面试题
  • 文章
  • 我

更多

  • 资源
  • 社区
  • 关于作者
  • 内容说明

© 2026 CodeRoadMap

津ICP备2026012044号-1·津公网安备12011002026155号·coderoadmap@126.com
无服务器入门/课时/无状态与外部存储
RawBlame
课时目录12 节

无服务器入门

  1. 01无服务器是什么
  2. 02十二要素应用
  3. 03FaaS 执行模型
  4. 04AWS Lambda 入门
  5. 05事件驱动架构
  6. 06API Gateway
  7. 07冷启动与性能
  8. 08无状态与外部存储
  9. 09数据库迁移
  10. 10本地开发与部署
  11. 11成本与限制
  12. 12综合练习

无状态与外部存储

RDS/DynamoDB/S3;对照 scale-stateless。

30 分钟

无状态与外部存储

Lambda 实例 随时可能被回收;warm 容器上的内存 不能当唯一真相来源。Serverless 应用必须 无状态 Handler + 外部持久化——这与 scale-stateless 一脉相承,只是把「任意 Pod」换成「任意 invocation」。

学习目标

  • 定义 Serverless 语境下的有状态反模式
  • 选型 RDS、DynamoDB、S3 的典型场景
  • 理解 VPC 内访问 RDS 与连接池约束

状态放哪里

存储适合Serverless 注意点
S3文件、静态资源、大 payload事件触发;权限用 IAM
DynamoDB键值、单表设计、高并发写见 ddb-intro
RDS关系型、复杂查询、事务需 VPC;连接数 scarce
ElastiCacheSession、热点读仍要无 Session 粘滞
// 反模式:static Map 存 upload 进度
// 正模式:progress → DynamoDB item;S3 存文件本体

RDS 与连接池

每个 warm Lambda 若各握一条 JDBC 连接,并发 100 可能 打满 RDS max_connections。常见做法:

  • RDS Proxy:池化、复用
  • 短连接 + 限并发(Provisioned Concurrency 控制上限)
  • 能 NoSQL 则 DynamoDB:与 Lambda 同属 Serverless 故事

关系建模与迁移见 orm-jpa;DynamoDB 访问模式见 ddb-keys。

与十二要素、扩展性

  • 十二要素 IV 后端服务:数据库是 附加资源,换环境只换连接串
  • scale-replication 的读副本:Lambda 只读报表可走 reader endpoint

练习

  • 设计「用户头像上传」:S3 key 规则 + 元数据存哪张表
  • 对比 DynamoDB 与 RDS 存 Order 列表:各写一条选型理由
  • 说明为何 Lambda 不宜用本地 /tmp 当持久化(仅临时、有大小上限)

小结

函数无状态,数据进 S3/DynamoDB/RDS——实例可死,数据不死。 下一课专门谈 Schema 迁移在 Serverless 里怎么跑。

加载本节练习…
← 上一课冷启动与性能下一课 →数据库迁移