IdGen 是 .NET 平臺下開源的類似 Twitter Snowflake 的 ID 生成器。
在某些情況下,您需要一個低延遲、分散式、按時間排序、緊湊且高度可用的 Id 生成系統。
實際上,IdGen 會生成 63 位 Id。一個 Id 由 3 部分組成:
-
• Timestamp
-
• Generator-id
-
• Sequence
預設 Default 生成的 Id 的 IdStructure 結構如下:
其中的 generator-id 部分,是需要手動配置的,不同的執行緒,不同的主機,不同的地區等,它在系統中應該是唯一的。
使用 Nuget 安裝 IdGen.
修改程式碼如下:
using IdGen; using System.Linq; class Program { static void Main(string[] args) { var generator = new IdGenerator(0); var id = generator.CreateId(); // Example id: 862817670527975424 } }
非常簡單,您已經建立了您的第一個 Id!
想要建立 100 個 ID?程式碼改成下面的即可。
var id = generator.Take(100);