System Design Notes
search
⌘Ctrlk
System Design Notes
  • The Art of Scalable Systems: Designing for Success
  • BASICS
    • Key Characteristics of Distributed Systems
    • DNS
    • Load Balancer
    • API Gateway
    • Caching
    • Message Queues
    • Proxies
    • Databases
    • ACID
    • CAP Theorem
    • PACEL Theorem
  • System Design patterns
    • Bloom filters
    • Consistent hashing
    • Quorum/Consensus
    • Leader and Follower
    • Write-ahead Log
    • Segmented Log
    • High-Water Mark
    • Locking Lease
    • Checksum
    • Vector Clocks
    • Liveness
      • Heartbeat
      • Gossip Protocol
      • Phi Accrual Failure Detection
    • Split Brain with Generation Clock
    • Split Brain with Fencing
    • Resyncing Nodes
  • DATA SYNCHRONISATION PATTERNS
    • Two-phase commit (2pc) Pattern
    • CQRS
    • Saga
    • Transactional outbox
    • Change Data Capture (CDC)
  • Monolith Decomposition Patterns
    • Monolith vs Microservices
    • Motivation
    • The Strangler Fig Migration Pattern
    • Domain-Driven Design
    • Other Approaches
  • WHEN IN PRODUCTION
    • Metrics
  • SD INTERVIEWS
    • System Design Interview Template
  • REAL WORLD SCENARIOS
    • Design a Distributed Message Queue & Event Streaming Platform
  • 💰Payments Services
    • Parties: Acquirer, Issuer
    • Events: Chargebacks, Reversals
  • 🛣️Infrastructure
    • K8S - ClusterIP vs NodePort vs LoadBalancer
gitbookPowered by GitBook
block-quoteOn this pagechevron-down
  1. System Design patterns

Liveness

Heartbeatchevron-rightGossip Protocolchevron-rightPhi Accrual Failure Detectionchevron-right
PreviousVector Clockschevron-leftNextHeartbeatchevron-right