第3章 AWS核心服务面试:EC2、S3、RDS、Lambda等高频考点

本章聚焦AWS架构师面试中四个核心服务的高频考题。每个服务都对应一套结构化表达逻辑,帮助你在短时间内展示深度和广度。先通过一张回答框架图掌握通用思路,再逐题拆解。

核心服务回答框架 —— 四步结构化表达 ① 识别服务场景 ② 拆解核心特性 ③ 对比替代方案 ④ 最佳实践收尾 EC2:计算密集型/ 内存型/GPU S3:存储频率/ 访问模式 EC2:vCPU/内存/ 网络/存储 S3:强一致/ 11个9持久性 EC2 vs ECS/Lambda RDS vs DynamoDB S3 vs EFS 成本优化 安全基线 可观测性 面试加分:每步用 1-2 个自家项目实例佐证,例如“我们曾将 C5.xlarge 迁移至 M5,节省 30% 成本”

问答卡片 1:EC2 实例类型选择

面试问题:你如何为业务选择合适的 EC2 实例类型?

考察点:对 EC2 家族(通用型、计算优化、内存优化、存储优化、GPU)的理解;成本意识;实际决策逻辑。

回答框架:① 分析工作负载特性(CPU/内存/IO/网络)→ ② 匹配实例家族 → ③ 考虑基准性能与突发性能(T系列)→ ④ 结合预留实例/Spot 实例做成本优化。

示例回答:“以我们的 API 网关微服务为例:峰值 CPU 40%、内存 2GB,选择 t3.medium 突发实例,结合 CPU Credit 余额监控;当连续高负载时自动切换至 c5.large 计算优化实例,利用混合实例组降低 40% 成本。”

可能追问:“T3 与 T2 的 Credit 机制区别?” “如何监控 Credit 耗尽?” “Spot 实例中断时如何优雅处理?”

避坑:勿只说“按规格选”,要体现“成本-性能权衡”的工程思维;避免单独推荐 T 系列给长期高负载业务。

问答卡片 2:S3 数据一致性与性能

面试问题:S3 数据一致性模型是什么?如何保证高并发下的读取性能?

考察点:S3 强一致性特性(2020年后);前缀分区设计;性能优化手段。

回答框架:① 说明 S3 已支持读后写强一致(List/Get/Put)→ ② 提及旧模型与变化 → ③ 高并发场景使用随机前缀(如哈希对象键)避免热点分区 → ④ 结合 Transfer Acceleration / S3 Select 优化吞吐。

示例回答:“我们迁移至 S3 后,对用户 ID 做 MD5 取首两位作为前缀,分散到上千个分区,使 GET 延迟稳定在 5ms 内;同时为日志分析启用 S3 Select,过滤效率提升 5 倍。”

可能追问:“S3 强一致性与 DynamoDB 最终一致区别?” “S3 事件通知的 at-least-once 如何保证幂等?” “如何计算最优前缀数量?”

避坑:不要回答“S3 是最终一致性”——落后过时;避免重复“分区”概念时忽略实际前缀设计案例。

问答卡片 3:Lambda 冷启动优化

面试问题:如何减少 AWS Lambda 的冷启动延迟?

考察点:Lambda 执行环境生命周期;运行时优化;预置并发策略。

回答框架:① 控制函数包大小(< 10MB)→ ② 使用轻量运行时(如 Node.js / Python)→ ③ 启用 Provisioned Concurrency → ④ 优化依赖(只打包必要库,使用 Lambda Layers 共享)→ ⑤ 利用 AWS SDK v3 按需引入。

示例回答:“某高并发 API 采用 Python + Powertools,函数包压缩至 2MB;设置 50 个预置并发单元,冷启动概率从 15% 降至 0.5%;同时使用 Lambda SnapStart(Java 场景),启动时间降低 80%。”

可能追问:“Provisioned Concurrency 与 Reserved Concurrency 区别?” “SnapStart 的局限性?” “VPC 环境下的冷启动如何优化?”

避坑:不要只说“用预置并发”但忽略成本;避免推荐复杂方案(如用 DynamoDB 存状态)而偏离服务本身优化。

公司侧重点

公司类型核心关注点
互联网大厂(如字节、阿里云)大规模集群成本优化、混合实例组、Spot 实例策略
金融/合规行业S3 加密、Lambda VPC 安全组、RDS 跨区域灾备
创业/SaaS 公司无服务器架构的冷启动、按需扩展、运维自动化
传统企业上云RDS 迁移方案、S3 与现有系统集成、EC2 预留实例规划

面试官画像

典型背景:拥有 5-8 年 AWS 架构经验,主导过百万美元级账单项目。他们常见陷阱提问方式:

  • “你在这类场景下遇到过什么坑?” —— 考察真实工程经验
  • “如果预算砍掉 30%,你怎么选?” —— 考察成本优化落地能力
  • “说说你用过哪些你没提的服务?” —— 考察知识广度与诚实

应对策略:每个问题都绑定一个具体项目数字(如节省 20% 成本)、一个失败案例学到的教训,展示复盘能力。

典型追问路径(以 Lambda 冷启动为例) 优化冷启动 预置并发 vs 预留并发? SnapStart 优缺点? VPC 冷启动如何解决? 成本估算公式? 如何动态调整? 哪些运行时支持? NAT 网关延迟? ENI 预热?

通用回答框架(卡片外补充)

任何核心服务问题均可套用以下三步:

  1. 场景锚定:“这个服务在我们项目里用于……”,快速拉回真实经验。
  2. 特性拆解:用 2-3 个特性数据(如 SLA 99.99%、延迟 P99 值)支撑论点。
  3. 权衡闭环:指出一个 trade-off(如成本 vs 性能)并给出你的决策标准。

额外避坑提醒

  • ❌ 避免空谈“最佳实践”而无具体数据(如“我用过 S3” vs “我用 S3 存储 500TB 用户文件,选择 Standard-IA 节省 30%”)
  • ❌ 不要只讲正面:提及一次你选错实例类型导致毛刺的教训,展示成长性。
  • ✅ 加分技巧:把服务名具象化(如“我们使用 Lambda + SQS 实现异步订单处理,冷启动控制在 200ms 以内”)