Design: Unique ID Generator
Design covers the ID generation service, its architecture, data flow, and scaling. Does not cover client-side ID usage or storage.
Functional Requirements
FR1: Generate unique IDs that are globally unique across distributed systems
FR2: Support high request throughput of up to 100,000 ID requests per second
FR3: IDs should be sortable by creation time
FR4: IDs must be generated with low latency (p99 < 10ms)
FR5: System should be highly available with 99.9% uptime
FR6: Support multiple clients generating IDs concurrently
Non-Functional Requirements
NFR1: No single point of failure
NFR2: IDs must be collision-free even under network partitions
NFR3: System should scale horizontally
NFR4: Generated IDs should be compact (e.g., 64-bit or 128-bit)
NFR5: Avoid reliance on centralized databases for ID generation
