- AUTO 數據庫ID自增
- INPUT 用戶輸入ID
- ID_WORKER 全局唯一ID,Long類型的主鍵
- ID_WORKER_STR 字符串全局唯一ID
- UUID 全局唯一ID,UUID類型的主鍵
- NONE 該類型為未設置主鍵類型
主鍵生成的幾種方式
1. 數據庫自增長序列或字段
2. UUID
3. Redis生成ID
當使用數據庫來生成ID性能不夠要求的時候,我們可以嘗試使用Redis來生成ID。這主要依賴於Redis是單線程的,所以也可以用生成全局唯一的ID。可以用Redis的原子操作 INCR和INCRBY來實現。
可以使用Redis集群來獲取更高的吞吐量。假如一個集群中有5台Redis。可以初始化每台Redis的值分別是1,2,3,4,5,然后步長都是5。各個Redis生成的ID為:
A:1,6,11,16,21
B:2,7,12,17,22
C:3,8,13,18,23
D:4,9,14,19,24
E:5,10,15,20,25
