amazon-web-services - 一个 Lambda 函数或多个 Lambda 函数

标签 amazon-web-services aws-lambda amazon-dynamodb aws-api-gateway amazon-dynamodb-streams

我可以编写一个 Lambda 函数来处理多个 REST API 请求吗?
我在 Dynamo DB 中有我的数据

流程:API网关-->Lambda函数-->Dynamo DB
例子:

Request1:GET Method-Need to pull data from Table1
/device/{device_id}/start/{start_date}/end/{end_date}/events


Request2:GET Method-Need to pull data from Table2
/device/{device_id}/start/{start_date}/end/{end_date}/event_count

Request3:POST Method-Need to put data from Table3
/device/{device_id}/start/{start_date}/end/{end_date}/fault_events

我应该编写 3 个不同的 lambda 函数来处理 3 个不同的请求,还是可以在一个 BIG Lambda 函数中处理所有 3 个请求,最好的解决方案是什么。

最佳答案

是的,您可以拥有一个 Lambda 函数来处理多个 API。
问题是为什么?

这样做是 considered (almost) an anti-pattern因为您将无法独立扩展各种场景。

这是 Chris Munns 最后在 re:invent 的演讲中粘贴的链接中的两张幻灯片,我非常同意。

enter image description here
enter image description here

关于amazon-web-services - 一个 Lambda 函数或多个 Lambda 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60035940/

相关文章:

java - 了解运行可用区的 AWS Lambda

amazon-web-services - AWS Serverless 资源从 v0.5 部署到 v1.0

amazon-web-services - AWS IAM - 从 Lambda 到 DynamoDB 的访问被拒绝

javascript - Node.js : "Cannot Find Module" error when a source file is put into a different folder

amazon-web-services - 如何保护 APIGateway 生成的 URL?

haskell - 使用管道将文件作为 HTTP 请求的源

amazon-web-services - 如何配置 API 网关端点以需要 API key ?

java - 在 Java 中使用 DynamoDBMapper 更新 DynamoDB 项目

amazon-web-services - CloudFormation 中 Eventbridge Scheduler 的重试策略

amazon-web-services - Terraform - AWS Route53 防止域删除