雪花ID生成器
雪花ID(Snowflake ID)是Twitter开发的一种分布式ID生成算法,能够在分布式系统中生成唯一的64位ID。
算法原理
雪花ID是一个64位的整数,由以下几部分组成:
- 时间戳(41位):毫秒级时间戳,可以使用69年
- 数据中心ID(5位):支持32个数据中心
- 机器ID(5位):每个数据中心支持32台机器
- 序列号(12位):每毫秒内可生成4096个ID
使用方法
- 设置机器ID(0-1023)
- 设置数据中心ID(0-31)
- 点击"生成ID"按钮生成单个ID
- 点击"生成多个ID"按钮批量生成ID
- 查看生成的ID详细信息
特性
- 高性能:每毫秒可生成4096个ID
- 分布式:支持多机器、多数据中心部署
- 有序性:ID按时间递增
- 唯一性:在分布式系统中保证ID唯一
应用场景
- 数据库主键生成
- 分布式系统中的唯一标识
- 订单号生成
- 消息队列中的消息ID