用途
AWS Serverless 是一个面向在 AWS 上构建生产级无服务器(Serverless)应用的专用技能。它围绕 Lambda 函数、API Gateway、DynamoDB、SQS/SNS 事件驱动模式等核心组件,提供可复用的代码模式与配置模板,帮助开发者按最佳实践组织无服务器项目。
主要能力
该技能以“模式(Patterns)”的形式组织内容,主要包含:
- Lambda Handler 模式:给出 Node.js 与 Python 两种语言的 Lambda 处理函数结构,强调在 handler 外部初始化客户端以复用连接、基于事件源解析输入、返回 API Gateway 兼容响应,以及统一的错误处理与日志记录(含 requestId)。
- API Gateway 集成模式:提供 SAM(AWS Serverless Application Model)模板示例,演示 HTTP API 与 Lambda 的集成,包括 CORS 配置、路由(如 GET /items/{id}、POST /items)、DynamoDB 表定义与按需计费(PAY_PER_REQUEST),以及输出 API URL。
- 事件驱动 SQS 模式:演示 Lambda 由 SQS 触发的可靠异步处理,包括批量处理、部分批次失败上报(ReportBatchItemFailures)、可见性超时设置、死信队列(DLQ)与重试策略。
此外还包含反模式(Anti-Patterns)与“Sharp Edges”(常见陷阱)清单,例如单体 Lambda、过大的依赖包、VPC 内同步调用等问题及其影响说明。
使用方式
该技能以代码片段与 YAML 模板的形式提供参考实现,涵盖 JavaScript/Node.js 与 Python 两种运行时。开发者可参照其中的 handler 结构、SAM 模板与队列配置,将其应用到自己的无服务器项目中。资料中未提供具体的安装命令或调用方式。
适用场景
- 实现任意 Lambda 函数(API 处理器、事件处理器、定时任务)
- 构建由 Lambda 支撑的 REST API 或 HTTP API
- 需要解耦的异步处理、重试逻辑与死信队列
- 批量处理消息
限制
资料中未提供该技能的收费、价格、平台支持范围或具体效果说明。反模式与陷阱部分仅列出问题与解决方向,未给出完整实现细节。