主键的生成的方法主要有:
- 数据库内置机制:自增, 但是在分布式环境下会有重复
- 字符串。自己订好规则。分段,可以避免重复。
- UUID。 重复的可能性小。但是不易读
- Snowflake.
由64bit构成,就是数据库中的long类型。
从左向右,第一位预留位,不使用,前41位是毫秒,接下来的10位工作机器id,剩余的12位是递增的序列号。
Snowflake的特点:
a. 生成的id趋势递增,但不是单调递增
b. 可能存在重复。比如机器时间往回调。
主键的生成的方法主要有:
由64bit构成,就是数据库中的long类型。
从左向右,第一位预留位,不使用,前41位是毫秒,接下来的10位工作机器id,剩余的12位是递增的序列号。
Snowflake的特点:
a. 生成的id趋势递增,但不是单调递增
b. 可能存在重复。比如机器时间往回调。
转载于:https://www.cnblogs.com/0xMe/p/11385962.html