UUID 與唯一識別碼基本概念

在程式、資料庫、分散式系統中,經常需要一個幾乎不會重複的識別碼來標記物件、紀錄或工作階段。UUID(Universally Unique Identifier)就是為此設計的。

UUID 長什麼樣子

標準 UUID 是 128 位元的數字,通常寫成 8-4-4-4-12 的十六進位格式,例如:550e8400-e29b-41d4-a716-446655440000。總共 36 個字元(包含連字號)。這個長度與產生方式使得在實際使用中碰撞(兩個不同物件得到相同 UUID)的機率極低。

為什麼不用簡單的遞增數字

在單一資料庫裡,自動遞增的整數 ID 很方便。但當系統分散在多台伺服器、或多個獨立產生紀錄的來源時,協調一個全域遞增數字會變複雜。UUID 可以在本地獨立產生,而不需要中央協調,仍然有極高機率保持唯一。這對離線產生、微服務、用戶端產生 ID 等場景很有用。

常見版本

UUID 有多個版本,產生方式不同:

大多數工具預設產生版本 4 的隨機 UUID。對一般用途來說已經足夠。

使用場景

UUID 本身不包含業務意義,只是一個唯一標籤。不應把敏感資訊編碼進 UUID 裡。

產生工具

UUID 產生器可以一鍵產生一個新的唯一識別碼,方便複製到程式、資料庫或文件中。產生過程在本地完成,不需要網路。每次產生的結果都應該不同(機率上幾乎保證)。

Wusper 的 UUID 工具提供這個功能。適合開發者或任何需要臨時唯一 ID 的場合。產生後請自行複製使用,工具不儲存結果。