AWS 无服务器开发模式
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @org-02qudk26/aws-serverless。
技能介绍
解决的问题
在 AWS Serverless 中,许多线上问题并不是缺少框架,而是缺少一套可复用的函数结构:Lambda 需要统一解析事件、处理错误并返回 API Gateway 响应;异步任务需要可靠消费消息、重试失败项,并控制可见性超时。这个技能把这些问题拆解成可落地的模式,帮助工程师在 Node.js 和 Python 中写出更接近生产环境的函数代码。
核心能力与步骤
- Lambda Handler Pattern:初始化客户端到 handler 外,减少每次调用开销;用
try/catch或try/except捕获异常,记录requestId和错误栈,并返回带statusCode、headers、body的响应。 - Event-Driven SQS Pattern:通过 SAM 模板绑定
SQS队列,设置VisibilityTimeout、maxReceiveCount和死信队列;handler 按Records遍历消息,将失败项写入batchItemFailures,实现部分批次失败处理。 - Anti-Patterns 与 Sharp Edges:提示避免单体 Lambda、大依赖、VPC 内同步调用,并关注冷启动、超时、内存、事件循环等待等运行细节。
适用边界与注意点
该资料偏重 AWS Lambda、API Gateway、DynamoDB、SQS 的常见开发模式,不适合直接作为架构决策依据。使用前需要确认队列超时、权限、环境变量与目标服务版本匹配;生产环境还应补充日志、指标、权限最小化与成本监控。
使用场景
- 在编写 Node.js Lambda 处理 API Gateway 请求并统一错误响应时使用
- 在配置 SQS 触发 Lambda 消费消息并处理批量失败与 DLQ 时使用
- 在排查 Lambda 冷启动、超时、VPC 连接和内存配置问题时使用
- 在实现 Python Lambda 查询 DynamoDB 并记录 requestId 日志时使用
适合人员
- 负责维护 Lambda API 后端、需要统一错误码和响应结构的工程师
- 负责异步任务管道、需要配置 SQS 批处理与死信重试的工程师
- 负责性能优化、需要排查 Lambda 冷启动与 VPC 超时的工程师
- 负责 Python/Node.js 函数迁移、需要复用生产化 handler 模式的工程师