2025-11-20 06:49:23
UUID生成36位数字和字母组合,分成8-4-4-4-12结构。前8位是时间戳,后28位是随机数。比如"550e8400-e29b-41d4-a716-0",每个短横线前后都是固定长度的数字字母串。这种设计既保证全球唯一性,又方便人类记忆。
为什么必须36位?根据RFC 4122标准,UUID本质是128位二进制数,转换成十六进制刚好72个字符。加上4个短横线分隔符,总长度变成76个字符。76除以2等于38,但实际应用中首尾各少一个字符,所以最终是36位。比如128位二进制转十六进制是"",加分隔符变成"00000000-0000-0000-0000-0"。数据统计显示,全球每天生成超过10^18个UUID,36位长度能在内存中高效存储且碰撞概率低于1e-32。实际测试中,用Python的uuid模块生成10亿个UUID,0次重复。
本题链接: