package com.common.utils;
import java.net.Inet4Address;
import java.net.UnknownHostException;
import java.util.HashSet;
import java.util.Random;
import java.util.Set;
/**
* @author kinghao
*/
public class SnowFlakeUtil {
/**
* 时间部分所占长度
*/
private static final int TIME_LEN = 41;
/**
* 数据中心id所占长度
*/
private static final int DATA_LEN = 5;
/**
* 机器id所占长度
*/
private static final int WORK_LEN = 5;
/**
* 毫秒内序列所占长度
*/
private static final int SEQ_LEN = 12;
/**
* 定义起始时间 2015-01-01 00:00:00
*/
private static final long START_TIME = 1420041600000L;
/**
* 上次生成ID的时间截
*/
private static long LAST_TIME_STAMP = -1L;
/**
* 时间部分向左移动的位数 22
*/
private static final int TIME_LEFT_BIT = 64 - 1 - TIME_LEN;
/**
* 自动获取数据中心id(可以手动定义 0-31之间的数)
*/
private static final long DATA_ID
雪花算法生成不重复序列ID
最新推荐文章于 2024-08-11 19:13:11 发布