【问题标题】:How to access last n parameters in an AWS Lambda function如何访问 AWS Lambda 函数中的最后 n 个参数
【发布时间】:2017-09-25 00:51:38
【问题描述】:

我在 AWS IoT 上接收感官数据,并使用规则将这些值传递给 Lambda 函数。在用 Python 编写的 Lambda 函数中,我需要根据最新的 n 值进行计算。

访问先前参数的最佳方式是什么?

【问题讨论】:

    标签: amazon-web-services aws-lambda aws-iot


    【解决方案1】:

    每个 Lambda 调用都应该是无状态的,并且不知道以前的调用(有容器重用,但您不能依赖它)。

    如果您需要这些参数,则必须将这些参数保存在其他地方,例如 DynamoDB 或 Elasticache 上的 Redis。

    然后,当您需要进行计算时,您可以检索过去的 n-1 个值并进行计算。

    【讨论】:

    • 我需要访问最新的 5 个值。但是,我每秒收到 2 个新值。您认为 DynamoDB 会是一种有效的方法吗?
    • 我不明白为什么不这样做。无论如何,您所说的“高效”是什么意思?
    • 将 3 秒后不再需要的值写入数据库对我来说听起来不是一个好的解决方案。数据库将快速增长,我怀疑这将是一个缓慢且昂贵的操作。不过,我不知道 AWS 中还有哪些其他替代方案
    • @mustafa 我的意思是你将它保存在 Lambda 之外的某个地方。无论您将它放在数据库中,还是在 S3 中或其他任何东西中,都由您决定。只是不要将它保存在 Lambda 中。
    • 如果您决定使用 DynamoDB,您可以为每条记录指定一个 TTL,以便在该时间到期后删除每条记录。与 S3 相同。
    猜你喜欢
    • 2021-03-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-10
    • 2017-06-12
    • 1970-01-01
    • 1970-01-01
    • 2019-09-21
    • 2020-08-01
    相关资源
    最近更新 更多