我应该担心UUID的唯一性

时间:2018-11-25 19:38:05

标签: uuid

我正在使用此https://www.npmjs.com/package/uuidv4模块来识别用户的唯一性。我应该担心两个人会得到相同的uuid吗?如果我存储当天所有给定的uuid,并且在我给出新的uuid之前先检查它是否已存在于数据库中,该怎么办?一天之后,我将清空数据库并重复该过程。这是一个好方法吗?我想念什么吗?

2 个答案:

答案 0 :(得分:2)

不,你不应该。 UUID在实际应用中是独一无二的。

来自Wikipedia: UUID

  

...,为了产生至少一次碰撞的50%概率,需要生成的随机版本4 UUID的数量为2.71亿五千万......

至:

  

如果我存储了当天所有给定的uuid,并且在我给出新的uuid之前,我先检查它是否已存在于数据库中怎么办

如果表具有Unique Key约束,则无需担心。即使发生冲突,DB也会至少在插入时拒绝它。

答案 1 :(得分:-3)

是的,您应该(我们也应该)。通过遵循标准过程,可以获得非常独特的UUID。但是,由于没有UUID的中央注册表,因此邪恶的玩家可能会故意造成冲突。因此,这些天来,对UUID的额外注意不会造成伤害。