1. 程式人生 > >分散式環境下全域性唯一ID的生成方案

分散式環境下全域性唯一ID的生成方案

方案1:UUID

優點:能夠非常簡便地保證分散式環境中的唯一性;
缺點:

  1. 長度過長,包含32個字元和4個短線;
  2. 沒有業務含義,不便於問題排查;

原理: 機器標識(MAC地址、IP地址)+系統時間+其它(隨機數、計數等)

方案2:資料庫主鍵

單庫:主鍵id
優點: id連續、唯一,且id大小反映先後順序;
缺點:分散式應用需要共享該單表,且單表的儲存量有上限;

分庫分表:sequence
優點: id連續、唯一;
缺點: id大小不能反映先後順序;

方案3:ZK順序節點

優點: id連續、唯一,且id大小反映先後順序,具有業務含義;
缺點: 效能是瓶頸;