tinyid、Leaf 分布式Id


tinyid( https://github.com/didi/tinyid)和Leaf( https://github.com/Meituan-Dianping/Leaf)都是分布式Id生成器。
目前Id生成器大體有2類算法:
1. snowflake算法
2. 基於數據庫的號段算法
各自算法的原理這里不介紹了,代碼都很簡單, 這里說一個細節
Leaf項目中 關於snowflake算法實現上,在每秒開始的時候,sequence並不是從0開始的,而是在100內隨機了一個數字,這種可以避免在請求比較少的情況下每次獲取的ID都是以000結尾的,保證后續取模操作能夠正常(比如對於數據庫分表操作的)
我的注解版:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM