High Availability

System Design Interview - Chapter 7 - Design a Unique ID Generator in Distributed Systems

System Design Interview - Chapter 7 - Design a Unique ID Generator in Distributed Systems

Translations: RU

Generating unique ID seems to be a simple task, but it is not in a high-load distributed systems!

This topic consists of:

  • Understanding the requirements and why it is a complicated task
  • Possible solutions:
    • Multi-master replication
    • Universally unique identifier (UUID)
    • Ticket server
    • Twitter SNOWFLAKE approach (seems to be the best one!)
  • Details:
    • Timestamp
    • Sequence number
  • Other issues
    • Clock synchronization
    • Section length tuning
    • High availability

These items are disclosed in a very interesting Chapter 7 of the book:

Building Event-Driven Microservices - Chapter 2 - Event Driven Microservice Fundamentals

Building Event-Driven Microservices - Chapter 2 - Event Driven Microservice Fundamentals

Translations: RU

Introduction into Event-driven microservice (EDM) architecture consists of the following topics:

  • two topologies
  • content of events
  • three types of events
  • table-stream duality
  • schemas for defining event data
  • single writer principle
  • features of event broker
  • event broker vs message broker
  • single source of truth principle
  • scaling using containers and VMs
  • microservice taxes that we should pay

These topics are disclosed in the Chapter 2 of the book we are currently studying: