目录
是什么
分布式ID是指在分布式系统中生成的唯一标识符。由于分布式系统的特点,多个节点可能会同时生成ID,因此需要确保每个ID在整个系统中是唯一的。
重点就是唯一性!!!!
特点
全局唯一
高并发
高可用
怎么做
-
UUID
-
缺点:长 占用空间大 无序的放到数据库做id索引性能下降
-
java实现
public static void main(String[] args) { // 生成随机UUID UUID uuid = UUID.randomUUID(); // 将UUID转换为字符串 String uuidString = uuid.toString(); // 输出UUID System.out.println("生成的UUID: " + uuidString); }
-
-
数据库主键自增
- 缺点:并发性能不高,分库分表比较麻烦,自增泄露数据库数据量
-
Redis自增
- 缺点:自增泄露数据量, 不够稳定,会造成数据丢失,redis负载过高的情况下造成ID生成速度慢
-
雪花算法
- 缺点:时钟回拨(可以解决,选用)
实现方案
推荐 美团Leaf