类 Snowflake
java.lang.Object
org.tio.utils.hutool.Snowflake
Twitter的Snowflake 算法
分布式系统中,有一些需要使用全局唯一ID的场景,有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。
snowflake的结构如下(每部分用-分开):
然后是5位datacenterId和5位workerId(10位的长度最多支持部署1024个节点)
最后12位是毫秒内的计数(12位的计数顺序号支持每个节点每毫秒产生4096个ID序号)
参考:http://www.cnblogs.com/relucent/p/4955340.html
分布式系统中,有一些需要使用全局唯一ID的场景,有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。
snowflake的结构如下(每部分用-分开):
0 - 0000000000 0000000000 0000000000 0000000000 0 - 00000 - 00000 - 000000000000第一位为未使用,接下来的41位为毫秒级时间(41位的长度可以使用69年)
然后是5位datacenterId和5位workerId(10位的长度最多支持部署1024个节点)
最后12位是毫秒内的计数(12位的计数顺序号支持每个节点每毫秒产生4096个ID序号)
参考:http://www.cnblogs.com/relucent/p/4955340.html
- 从以下版本开始:
- 3.0.1
- 作者:
- Looly
-
构造器概要
构造器 -
方法概要
-
构造器详细资料
-
Snowflake
public Snowflake(long workerId, long datacenterId) 构造- 参数:
workerId- 终端IDdatacenterId- 数据中心ID
-
-
方法详细资料
-
nextId
public long nextId()下一个ID- 返回:
- ID
-