【问题标题】:Create 18 digit Unique ID in aws lambda instance在 aws lambda 实例中创建 18 位唯一 ID
【发布时间】:2021-02-26 08:57:22
【问题描述】:

我遇到了这个问题。

方法:我们使用 AWS lambda 执行所有服务。我试图生成一个唯一 ID(例如 - J04tWlvoUUHvpt )来将每个条目存储在 Mongo 中,我正在使用 https://www.npmjs.com/package/uniqid 创建这个模式。它使用服务器的时间戳、processID 和 mac 地址来创建 id。

问题:上述方法在任何服务器或本地机器上都能完美运行。但是在 lambda 中运行它有问题。由于 lambda 创建无状态实例,它会为 lambda 的初始实例创建一个唯一的 id,但后来它只会创建重复的副本,仍然是它关闭的 lambda 实例。

任何解决方案都可以应用。

【问题讨论】:

    标签: amazon-web-services aws-lambda duplicates unique-id


    【解决方案1】:

    uniqid library 在 AWS Lambda 中运行良好(我刚刚尝试使用 Node 运行时)。

    它会考虑时间戳,如果最后返回的时间戳等于当前时间戳,它还会记住最后返回的时间戳in order to increment it by 1

    因此,即使在同一个 Lambda 进程和同一毫秒内多次调用也会产生不同的值。

    另一种选择是使用context(第二个处理程序参数)中的awsRequestId

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-06-01
      • 2019-05-04
      • 2010-11-07
      • 1970-01-01
      • 1970-01-01
      • 2020-05-25
      • 1970-01-01
      相关资源
      最近更新 更多