Cluster

System Design Interview - Chapter 5 - Design Consistent Hashing

System Design Interview - Chapter 5 - Design Consistent Hashing

Translations: RU

Consistent Hashing is a cornerstone technology for distributed systems. Many of software developers don’t realize it, but Consistent Hashing is needed in many places: load balancers, caches, CDNs, id generators, databases, chats / social networks, and many other systems.

This topic consists of:

  • Problem with rehashing and why we need hashing to be CONSISTENT
  • Hash space and hash ring
  • BASIC approach (introduced by Karger et al. at MIT)
  • Advanced approach with VIRTUAL NODES

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

Building Event-Driven Microservices - Chapter 14 - Supportive Tooling

Building Event-Driven Microservices - Chapter 14 - Supportive Tooling

Translations: RU

Quite often the tooling is a forgotten area during the beginning of development. This chapter overlooks the tooling that can help build and maintain event-driven microservices. Useful checklist! This topic includes:

  • Org rules
  • Documentation, tagging
  • Quotas
  • Schema registry
  • Offset management
  • ACL
  • State management and app reset
  • Consumer offset lag monitoring
  • Container Management Controls
  • Cluster Creation and Management
  • Dependency Tracking

All of these is disclosed in the Chapter 14 of the book: