gpt4 book ai didi

java - 结合版本 1 和版本 4 UUID 的想法是个好主意吗?

转载 作者:太空宇宙 更新时间:2023-11-04 13:11:36 24 4
gpt4 key购买 nike

我想生成基于时间的 UUID,但我不希望 UUID 值的任何部分基于生成它们的计算机。

版本 1 UUID 是基于时间的(前 64 位代表时间,后 64 位代表生成它们的计算机的 MAC 地址)。

版本 4 UUID 不是基于时间的,而是根据随机数生成的。

就我而言,我希望能够在同一台计算机上为同一时间戳生成多个基于时间的 UUID - 并且我希望这些 UUID 是唯一的。 UUID 仍然必须是基于时间的,以便按字典顺序对它们进行排序,从而得到与创建它们所用的时间戳一致的顺序。

是否有任何充分的理由不使用我自己的方案生成 UUID - 其中前 64 位代表时间戳(如版本 1),第二个 64 位将随机生成(如版本 4)?

最佳答案

ULIDs几乎完全满足你的要求。您可能需要在应用程序端生成它们,因为它看起来似乎缺乏 native 数据库支持,但它是 128 位 UUID 的替代品,因此您只需将其编码为十六进制即可插入到任何 UUID 类型列中。

关于java - 结合版本 1 和版本 4 UUID 的想法是个好主意吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33899614/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com