全局 id生成对比

对比 数据库自增 id、UUID、雪花算法的一些利弊:

特性 递增ID UUID 雪花算法
唯一性 递增,唯一性仅在同一数据库中保证 全局唯一 全局唯一
排序性 递增,可以按时间顺序排序 随机,不具备排序特性 按时间有序
存储空间 较小 较大 较小
可读性 易读 不易读 可读,包含时间信息
生成算法复杂性 简单 相对较简单 相对简单,依赖于时间和节点标识
性能 高 相对较高 高
可调整性 有限 有限 可根据需求调整节点位数、序列位数
时间依赖性 受数据库自增机制限制 无 受系统时间限制
应用场景 数据库主键、顺序存储、分片键 全局唯一标识、分布式系统 分布式系统、分片键

生成规则对比

类型 生成规则
递增ID 通常由数据库自增机制生成,每次递增1。
UUID 由32个十六进制字符组成,分为8-4-4-4-12五个部分。
雪花算法(Snowflake) 64位二进制数,分为1位符号位、41位时间戳、10位节点标识、12位序列号。
相关推荐
此时不提桶,更待何时14 小时前
06-12-A-Kafka存储深水区与源码解析详解
分布式·kafka·linq
此时不提桶,更待何时18 小时前
06-15-A-Kafka生态集成与流处理详解
分布式·kafka
此时不提桶,更待何时1 天前
06-13-A-Kafka客户端与协议深入详解
分布式·kafka
程序猿乐锅1 天前
从0-1一文详解RabbitMQ
java·分布式·后端·中间件·rabbitmq·ruby
老陈说编程2 天前
1. 鸿蒙 (HarmonyOS) 2012 至 2026 年的发展历程
分布式·华为·个人开发·harmonyos·鸿蒙·鸿蒙系统·程序员创富
ly76894 天前
Redis 分布式锁的边界条件:Redlock 争议、锁续期与客户端崩溃后的互斥失效
数据库·redis·分布式·分布式锁·watchdog·redlock
灯澜忆梦4 天前
【minio】#5 | MinIO 分布式部署 + HTTPS 部署
分布式·网络协议·https·对象存储·minio
谢亮_vipxieliang4 天前
Spring Cloud 服务治理入门:注册发现、配置中心、网关限流、熔断降级与分布式一致性方案
分布式·spring·spring cloud
樱花落木兰5 天前
分布式登录实战:Session 会话共享改造,Redis 存储用户登录状态
java·javascript·数据库·redis·分布式·缓存