【发布时间】:2020-06-07 18:03:46
【问题描述】:
我正在使用带有 Node.js 的 AWS Lambda 将项目插入到我的 DynamoDB 表中,并且需要为这些项目生成唯一的 ID。
我最担心的是 AWS Lambda 底层基础设施中的熵,以及每秒与大量 id 发生冲突的风险。
我正在使用 nanoid,但不确定它是否符合此要求。我正在使用的代码是这样的:
const { customAlphabet } = require("nanoid");
const alphabet = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
const idSize = 20;
const nanoid = customAlphabet(alphabet, idSize);
const id = nanoid(); //=> "scLV4Vc7OrJ2Vpib9rz6"
nonoid 如何产生随机性?在 AWS Lambda 函数中使用是否安全(高熵和低碰撞变化)?如果没有,有什么替代方案?
【问题讨论】:
标签: node.js amazon-web-services random aws-lambda amazon-dynamodb