在 AWS lambda 服务中从其他 lambda 调用 lambda 是个好主意吗?



我有几个lambda函数,所有这些函数都有一个通用函数。因为它是通用的,并且大多数代码都在该通用函数中。因此,为该特定函数考虑单独的 lambda 函数是合乎逻辑的。

但是当我想到成本前景时,它让我气馁。我的意思是,调用一个 lambda 将自动调用另一个 lambda。因此,一个活动将雇用两种不同的资源。而且我似乎不划算。是这样吗?

它一直在做。我已经让 Lambda 按确定性的时间表运行,其中根据各种因素调用其他 Lambda。

但是,您必须记住该常见"功能"正在做什么,以及这不仅会影响成本,还会影响性能。

在构建无服务器应用或应用中的无服务器组件时,有两种主要心态。您可以将AWS Lambda,Azure Functions,Google Cloud Functions等视为真正将"微"置于微服务的"一个功能"解决方案。或者,您可以将 Lambda 用作函数的逻辑组(我仍然认为"一个函数......您的应用程序")中,您将在单个 Lambda 中有多个。两者都是完全有效的方法,在调试时可能会减少头痛=)

如果您有多个 Lambda 的通用函数,则可能需要考虑在代码中处理此问题,然后再使用另一个 Lambda。我的意思是包或库之类的东西。例如,使用 Node.js,您只需使用 NPM 导入该通用函数,以便您可以从一个地方维护它,并根据需要简单地更新依赖于它的任何内容。

尽量不要从字面上理解"云函数",而是将每个函数拆分为一个新的 Lambda。

请记住,Lambda 有最低费用,因为它四舍五入到最接近的 100 毫秒。因此,如果您要调用一些实际上运行非常快的通用函数......我不会把它分成一个新的 Lambda。你会付出更多,但你的表现也会受到阻碍。

您的里程会像其他任何东西一样变化。云函数为我们提供了一个全新的维度来思考。虽然它们非常方便,但如果不仔细计划,它们实际上会降低性能并增加成本。

相关内容

  • 没有找到相关文章

最新更新