Skip to content

๐ŸŒ Distributed Systems Exploration โ€‹

Distributed systems are the backbone of scalable and fault-tolerant applications. In this phase, we explore 6+ distributed technologies, understanding how they work, what problems they solve, and where they fit in microservices.

๐Ÿ” Exploration Methodology โ€‹

For this phase, students will work in collaborative teams to deeply investigate distributed systems technologies. Each team will:

  1. Research & Analyze: Thoroughly explore an assigned distributed system technology
  2. Document Findings: Create comprehensive technical documentation
  3. Present Solutions: Deliver an engaging presentation to peers and faculty

Your exploration should focus on these key aspects:

Focus AreaKey Questions to Address
๐Ÿ—๏ธ ArchitectureHow is the system structured? What are its core components?
โš™๏ธ Working PrinciplesWhat algorithms and techniques make it function? How does data flow?
๐Ÿ›ก๏ธ High AvailabilityHow does it handle failures? What redundancy mechanisms exist?
๐Ÿ’ผ Use CasesWhere is it most effectively applied? What problems does it solve best?
๐Ÿ”„ IntegrationHow does it fit within a microservices ecosystem?

Teams will be evaluated on technical depth, presentation quality, and practical insights provided.

๐Ÿ“ฆ 1. Apache Cassandra โ€“ Decentralized NoSQL DB โ€‹

Architecture Highlights:

  • Peer-to-peer ring-based system using consistent hashing
  • Eventual consistency with tunable quorum reads/writes
  • Replication across data centers
  • Uses SSTables and Memtables for fast write-heavy workloads

Use Case: High-volume write system for analytics or logs.


โšก 2. Apache Kafka โ€“ Distributed Event Streaming Platform โ€‹

Architecture Highlights:

  • Distributed commit log with partitioned topics
  • Producer โ†’ Kafka Broker โ†’ Consumer
  • Message durability via segment files on disk
  • High-throughput stream processing with horizontal scaling

Use Case: Decoupled microservice communication, event sourcing, stream analytics.


๐Ÿง  3. Redis Cluster โ€“ In-Memory Key-Value Store (Distributed Mode) โ€‹

Architecture Highlights:

  • Hash-slot-based sharding (16,384 slots)
  • Master-replica architecture with automatic failover (via Sentinel or Cluster)
  • High-speed data access with optional persistence

Use Case: Caching for microservices, pub/sub for chat or real-time updates.


๐Ÿงฎ 4. Etcd โ€“ Distributed Key-Value Store for Configuration & Coordination โ€‹

Architecture Highlights:

  • Strongly consistent store using Raft consensus
  • Frequently used in Kubernetes for state/config storage
  • Designed for leader election, distributed locking, and configuration management

Use Case: Service registry, feature flag storage, cluster coordination.


๐Ÿ”Ž 5. Consul โ€“ Service Discovery and Key/Value Configuration โ€‹

Architecture Highlights:

  • Gossip-based peer discovery
  • Offers DNS + HTTP APIs for service registration and health checking
  • KV store with ACLs for configuration sharing
  • Integrates with Envoy for service mesh features

Use Case: Discover microservices dynamically, share config globally across services.


๐ŸŒ 6. CockroachDB โ€“ Distributed SQL Database โ€‹

Architecture Highlights:

  • Follows Google Spanner-inspired architecture
  • Distributed ACID transactions via Raft
  • Multi-region, horizontally scalable SQL
  • Strong consistency with PostgreSQL compatibility

Use Case: Global backend for services needing relational queries and strong consistency.


๐Ÿ“˜ 7. MinIO โ€“ Distributed Object Storage (S3-Compatible) โ€‹

Architecture Highlights:

  • Distributed erasure-coded storage
  • Horizontal scaling with node auto-discovery
  • API-compatible with AWS S3
  • High-performance object store for cloud-native workloads

Use Case: Store file uploads, logs, media in a microservices app without relying on AWS.


๐Ÿ”„ Summary Table โ€‹

SystemTypeArchitecture KeywordsIdeal Use Case
CassandraNoSQL DBPeer-to-peer, AP, ShardingHigh-speed writes, analytics
KafkaEvent StreamingBroker, Partitioning, LogMessaging, decoupling, events
Redis ClusterIn-Memory KV StoreSharding, ReplicationCaching, real-time data
EtcdConfig StoreRaft, Leader ElectionCluster state/config (e.g., Kubernetes)
ConsulService Discovery/KVGossip, DNS-based discoveryMicroservices service registry
CockroachDBDistributed SQL DBRaft, ACID, SQL + ScaleTransactional workloads, global apps
MinIOObject StorageErasure coding, S3 APIDistributed storage for files/media

๐Ÿง  Concepts Reinforced: โ€‹

  • Consistency models (Strong, Eventual, Tunable)
  • Consensus protocols (Raft, Gossip)
  • Data partitioning and replication
  • Service coordination and discovery
  • State management in stateless systems

Built with VitePress ยท Notes ยฉ 2026 [Your Name]