Menu

1 / 7

Designing a topology-aware UUID v8-style Java library for distributed systems

DEV Community·Louis Franck M·6 months ago
#3qIjY4dH
#opensource#java#backend#api#euid
Reading 0:00
15s threshold

Most ID libraries solve one problem well:

uniqueness

But in distributed systems, that is often not enough.

Sometimes you also want an identifier to help with:

- ordering

- tracing

- debugging

- understanding where it came from

That is why I built EUID , a Java library for generating sortable, decodable, topology-aware UUID v8-style identifiers .

With v0.2.0 , I made the biggest change to the project so far: I split generation into two strategies instead of forcing one implementation to handle every workload.

Why EUID exists

Traditional UUIDs are great when you want opaque, globally unique values.

But they do not help much when your system also cares about:

time ordering

infrastructure visibility

decoding metadata from an ID

understanding distributed generation behavior

EUID is designed for those cases.

It uses a structured 128-bit layout with:

timestamp

region

shard

node

sequence

So the ID is not just unique — it can also be decoded and understood.

What changed in v0.2.0

The biggest…

Continue reading — create a free account

Join HashtagPLUS to read full articles, follow hashtags, vote, and join the conversation.