如何在Serverless.yml中为AWS Lambda配置已有SQS队列触发器
配置已有SQS队列作为Lambda触发器(serverless.yml)
要把已有的SQS队列(通过ARN标识)设为Lambda函数的触发器,只需在functions下对应函数的配置里添加events字段,指定sqs类型并填入队列ARN即可。Serverless Framework会自动为Lambda创建所需的权限,允许它从该SQS队列读取消息。
修改后的完整serverless.yml配置如下:
service: test-service provider: name: aws runtime: nodejs18.x stage: dev region: eu-central-1 functions: test: handler: index.handler events: - sqs: arn: arn:aws:sqs:eu-central-1:123456789012:your-existing-queue-name # 可选配置,按需添加 batchSize: 5 # 每次批量处理的消息数,默认10 enabled: true # 是否启用触发器,默认true
关键说明:
- 替换
arn字段的值为你实际的SQS队列ARN,注意ARN里的区域、账号ID和队列名称要和实际匹配 - 如果需要调整消息批量处理的数量,设置
batchSize参数即可 - 若要临时禁用触发器,可将
enabled设为false
内容的提问来源于stack exchange,提问作者Matteo
相关产品推荐
相关产品推荐

