雪花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