首页 > 解决方案 > AWS Lambda 上的 API 后端

问题描述

上下文: 我有一个用例,我的后端服务应该计算一个或多个特征,其中每个特征都是简单的计算和平(可以像添加两个数字一样简单)并且每个特征都接受输入并返回一个输出值,可以是布尔值或数字。客户端实际上可以请求功能(1 或 10 等),每个功能也可以有多个版本。

设计: Lambda 函数似乎是一个不错的选择,因为它支持版本控制并负责扩展。在我的设计中,一个 Lambda 将接收请求,然后并行调用进一步的 lambda 函数(假设用户要求 12 个特性,Lambda 函数 L1 将并行调用 12 个 Lambda 函数),并将所有计算的特性值作为一个响应返回(HTTP )。这样,所有功能都可以在它们自己的 Lambda 函数中进行版本控制。

问题: 可以直接从另一个 Lambda 函数调用 lambda 函数吗?它是使用 Lambda 函数的好用例吗?

谢谢

标签: amazon-web-servicesaws-lambdaserverlessaws-serverless

解决方案


我认为 Lambda 适用于您的用例。对于版本控制,您可以使用 API Gateway 提供的 API 版本控制,但我认为这对您的情况来说有点多。只需创建不同的功能。

查看serverless.com。这是一个坚实的框架,很容易上手。设置它需要做很多工作,而且你的基础设施就是代码。

是的,可以从其他 Lambda 调用 lambda。但是,没有一种“干净”的方法可以做到这一点。另一方面,“阶梯函数”可能是您需要的。工作流中的 Lambda 支持链接函数。前一个 lambda 并没有“调用”下一个函数,而是继续工作流程中的下一步。Serverless 框架也支持使用该方法,可以在 serverless.yml 配置文件中进行配置


推荐阅读