UUID 是 Universally Unique Identifier(通用唯一識別碼)的縮寫,它是一種用來唯一標識資源的識別碼,就像我們人一樣,會有身分證字號,是獨一無二的。而 UUID 是由一組 128 位元的數字所組成,通常以十六進位的方式表示。這個識別碼在理論上是唯一的,因此在各種應用中被廣泛使用。
UUID 的生成遵循特定的算法,以確保每個產生的 UUID 在宇宙中是唯一的。一個常見的 UUID 格式是這樣的:
1 | 123e4567-e89b-12d3-a456-426655440000 |
其中包含了五組由連字號(hyphen)分隔的 32 位元數字。
UUID 的唯一性和無序性使其在分散式系統中非常有用,特別是在各種數據庫、網路通訊和分布式系統中用作唯一標識。在許多情況下,UUID 可以替代傳統的自增數字 ID(例如自動遞增的主鍵),避免了 ID 衝突和依賴中央編號生成器的問題。
我們可以用 NPM 直接來生成唯一性的 UUID
安裝 UUID
1 | npm install uuid |
引用執行 UUID
app.js
1 | import { v4 as uuidv4 } from 'uuid'; |
UUID 版本,為什麼是 v4 ?
不同的 UUID 版本有不同的特點,因此在不同的情況下可能會使用不同的版本
- v1:日期時間和MAC位址
- v2:日期時間和MAC位址,DCE安全版本
- v3、v5:基於命名空間名稱
- v4:完全基於隨機數字生成的
v4 是一個很常用且通用的 UUID 版本,它確保了高度的唯一性。在大多數情況下,v4 的 UUID 是足夠隨機的,因此非常適合用於一般的唯一標識。