Ross ROSS = Recommend OSS · open-source software intelligence for agents

yitter/IdGenerator

💎多语言实现,高性能生成唯一数字ID。 💎优化的雪花算法(SnowFlake)——雪花漂移算法,在缩短ID长度的同时,具备极高瞬时并发处理能力(50W/0.1s)。 💎原生支持 C#/Java/Go/Rust/C/JavaScript/TypeScript/Python/Pascal 多语言,提供其它适用于其它语言的多线程安全调用动态库(FFI)。💎支持容器环境自动扩容(自动注册 WorkerId ),单机或分布式唯一IdGenerator。💎顶尖优化,超强效能。 observed · 2026-08-28

github.com/yitter/IdGenerator · C · MIT (permissive) observed · 2026-08-28

Health v2 · maintenance only

30/100

  • Activity 15
  • Release rhythm 8
  • Longevity 100
How is this computed?

round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-02. Adoption (stars, forks) is never an input.

  • gap_med: n/a
  • age_days: 1999
  • days_rel: n/a
  • days_push: 510
  • n_releases_24m: 0

Full methodology

Adoption not part of the score

3207 stars · 425 forks observed · 2026-08-28

What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-30, confidence not recorded

A high-performance unique numeric ID generator library implementing an optimized Snowflake ('drift') algorithm, natively available in C#, Java, Go, Rust, C, JavaScript, TypeScript, Python, Pascal, and more via FFI. It generates short, monotonically increasing 64-bit IDs suitable for distributed database primary keys, with automatic WorkerId registration in container environments like Kubernetes.

Use cases

  • generate unique primary keys for distributed databases
  • generate short snowflake-style IDs that fit in JavaScript Number
  • generate unique IDs across sharded databases
  • auto-register worker IDs when scaling in kubernetes
  • generate monotonic IDs at very high concurrency
  • replace GUIDs with shorter sortable numeric IDs
  • handle clock rollback when generating IDs

When to choose

  • you need compact, time-ordered numeric IDs for distributed systems or sharded tables
  • you need extremely high ID generation throughput (hundreds of thousands per second)
  • you want a dependency-free ID generator usable across many programming languages
  • you deploy in containers and need automatic WorkerId registration
  • you need to keep generated IDs within JavaScript's Number.MAX_SAFE_INTEGER for decades

When to avoid

  • you need UUID/GUID-format identifiers or string IDs
  • you require strictly consecutive (gap-free) sequential IDs
  • your system cannot guarantee a globally unique WorkerId per instance
  • you depend on an external service like Redis for ID allocation and prefer that model

Facets

library · maturity active

database concurrency developer-tools databases microservices backend developer-tools cross-platform dotnet jvm go rust cpp python php c snowflake unique-id id-generation distributed-systems primary-key snowflake-drift-algorithm multi-language kubernetes nodejs

1 source

Member repositories

RepositoryRoleHealth v2
yitter/IdGeneratormain30

For agents

markdown · JSON · MCP: product_card(name="yitter/IdGenerator")

Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem