雪花算法笔记
什么是雪花算法?
概述:是一种生成id的算法,是去中心化生成的方法 能解决分库分表生成id重复的状态详细算法百度就知道;
为什么要用于雪花算法而不用UUID呢?
因为UUID是随机的而且生成的是36位字符一个id要占108个字节 雪花算法是二进制可以转化成十进制的数字 数字所占的空间就比较小
而且UUID生成的是随机的所以一旦要做修改维护之类的就会比较困难 像雪花它生成的id总体上是递增的情况(因为算法中有根据毫秒值生成的部分,在一定的时间内它是连续的) 好维护只要维护B+Tree树的底层就好了。
注释:主键生成一般分为中心化(有一个专门存id的地方 所有的id从这里拿一旦这里挂了就凉了)和去中心化(去中心化方式无需额外部署,以jar包方式被加载,可扩展性也很好,因此更推荐使用)
纯小白注,个人记忆笔记仅供参考(所以不会很详细) 欢迎指正