如何在许多AWS Lambda函数之间共享数据?

时间:2018-03-11 21:44:27

标签: amazon-web-services aws-lambda

我有8个不同的AWS Lambda函数需要共享一些常见数据。 (如数据库的常见配置等)

2 个答案:

答案 0 :(得分:2)

没有用于在Lambda函数之间共享数据的内置技术。每个函数独立运行,没有共享数据存储区。

您需要使用外部数据存储区 - 也就是Lambda之外可以保留数据的东西。

一些选项包括:

  • Amazon S3:您可以将信息存储在由Lambda函数检索的S3对象中。
  • Amazon DynamoDB:完全托管的NoSQL数据库,可提供快速的性能。非常适合存储和检索数据博客,例如JSON对象。您的Lambda函数将通过标准API调用访问DynamoDB。为了获得极致性能,您可以使用DynamoDB Accelerator(DAX)。
  • AWS Systems Manager Parameter Store:为配置数据管理和机密管理提供安全的分层存储。

以上选项是完全托管的服务,因此您无需运行任何额外的基础架构。

还有其他选项,例如Amazon ElastiCache,但它们需要运行其他服务。

答案 1 :(得分:0)

根据配置的性质,您可以决定使用不同的存储选项。

如果配置不经常更改且大部分是静态的,您可以使用以下选项,

  • 亚马逊系统管理员参数商店
  • 将配置作为代码的一部分嵌入

如果他们经常变化,你可以考虑,

  • AWS DynamoDB
  • AWS S3

注意:根据您的使用情况,您还可以将这些配置视为这些Lambda函数的参数。