Jordium.Snowflake.NET — A High-Performance, Cross-Platform Snowflake ID Generator #121867
Unanswered
nelson820125
asked this question in
Show and tell
Replies: 1 comment
-
|
The performance and code quality is not optimal. The code is unnecessarily complex, keeping unusable old versions as V1/V2. It's full of unnecessary encapsulation and likely copied from some Java implementation that I've searched. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
I’m excited to share Jordium.Snowflake.NET, a lightweight, high-performance, and fully cross-platform Snowflake ID generator designed for modern .NET applications.
If you're building distributed systems, microservices, event-driven pipelines, or anything that needs unique, sortable, and globally scalable identifiers — this library was built for you.
✨ Key Features
🔥 High Performance
Generates up to 1.7M+ IDs/second per node
Ultra-low CPU overhead
Thread-safe & lock-free implementation
🌍 Distributed-Ready
Supports custom datacenter & worker IDs
Safe for large-scale, multi-node deployments
No external dependencies or coordination service required
🛠 Flexible Bit Configuration
Customizable timestamp / worker / sequence bits
Supports extended sequence length (beyond the original Snowflake spec)
Handles clock drift gracefully
💡 Simple to Use
📦 Cross-Platform & Compatible
.NET Framework ≥ 4.6.1
.NET 6 / 7 / 8 / 9 / 10
.NET Standard ≥ 2.0
Ready for cloud-native workloads and ASP.NET Core services
📦 Repo
Install-Package Jordium.Snowflake.NETNuGet: https://www.nuget.org/packages/Jordium.Snowflake.NET
Github: https://github.com/nelson820125/Jordium.Snowflake.NET
🧪 Benchmarks
~1.7M ID/s on lightweight hardware
Stable latency under heavy concurrent load
Reliable sequence rollover handling
More detailed benchmark charts are included in the repository.
📘 Why I Built This Library
Snowflake IDs are powerful, but many .NET implementations suffer from:
low throughput
inconsistent timestamp handling
thread contention
unfriendly APIs
limited configurability
Jordium.Snowflake.NET aims to fix these issues with a clean API, high performance, and robust distributed guarantees — suitable for production-grade systems.
👋 Feedback Welcome!
👉 Show & Tell, Ask Questions, Share Use Cases!
Beta Was this translation helpful? Give feedback.
All reactions