public class ElasticIdGeneratorFactory extends Object implements IdGeneratorFactory
+------+----------------------+----------------+-----------+
| sign | delta millisecond | worker node id | sequence |
+------+----------------------+----------------+-----------+
1bit timeBits workerBits seqBits
Note that: The total bits must be 64 -1| 限定符和类型 | 字段和说明 |
|---|---|
protected long |
epochTimestamp
epoch timestamp
|
protected int |
seqBits |
protected int |
timeBits
Bits allocate
|
protected TimeUnit |
timeUnit |
protected int |
workerBits |
| 构造器和说明 |
|---|
ElasticIdGeneratorFactory() |
| 限定符和类型 | 方法和说明 |
|---|---|
IdGenerator |
create(long workerId) |
IdGenerator |
create(WorkerIdAssigner workerIdAssigner) |
void |
setEpochTimestamp(long epochTimestamp) |
void |
setSeqBits(int seqBits) |
void |
setTimeBits(int timeBits) |
void |
setTimeUnit(TimeUnit timeUnit) |
void |
setWorkerBits(int workerBits) |
protected int timeBits
protected int workerBits
protected int seqBits
protected long epochTimestamp
protected TimeUnit timeUnit
public IdGenerator create(WorkerIdAssigner workerIdAssigner)
create 在接口中 IdGeneratorFactorypublic IdGenerator create(long workerId)
create 在接口中 IdGeneratorFactorypublic void setTimeBits(int timeBits)
public void setWorkerBits(int workerBits)
public void setSeqBits(int seqBits)
public void setEpochTimestamp(long epochTimestamp)
public void setTimeUnit(TimeUnit timeUnit)
Copyright © 2020. All rights reserved.