阅读Guid上的所有帖子后,我仍然不清楚一件简单的事情:
不同机器生成的Guids也保持其独特性。
我已经阅读过关于单机的guid唯一性,但我仍然不了解不同机器的唯一性
答案 0 :(得分:12)
人们普遍认为新的随机GUID始终是唯一的。概率地说这不是真的,但产生欺骗的可能性非常小,我们不需要关心它。
生成两个相同guid的几率为5,316,911,983,139,663,491,615,228,241,121,400,000中的1个
因此,如果您在100万台计算机上生成100万个guid,则生成重复的可能性为:5,316,911,983,139,663,491,615,228中的1个
在10亿台计算机上花费10亿个guid,产生欺骗的几率是: 1中5,316,911,983,139,663,491(即5.3 quintillion)。
这些数字不言而喻,你不会产生欺骗。
如果您想知道我在哪里获得这些数字,GUID的值部分是122位。 2 ^ 122是5.3169119831396634916152282411214 x 10 ^ 36
一些更疯狂的人物...... 如果每秒生成100万个guid,则需要168,486,464,147,580,370,470,736年才能在概率上保证重复。
答案 1 :(得分:4)
答案 2 :(得分:2)
我记得在某个地方听说如果你把IPV4地址空间(32位)可视化为邮票的大小,IPV6(128位)就是我们太阳系的大小。生成一个骗局就不会发生。
此外,如果你有更多可能与两台不同的机器重复相同的机器,因为大多数Guid生成算法会将你的计算机NIC MAC地址嵌入到guid中(它是48位)。虽然有些算法没有嵌入MAC地址,但只是纯粹随机的。见:http://guid.us/
编辑:另一个有趣的比例示例 地球的体积大约是10 ^ 27立方厘米。这意味着地球的整个体积每立方厘米就可以拥有340,000,000,000个指南。这个数字令人难以置信。
或者,地球表面的每个方形纳米尺寸本身可以有大约650,000个guid。