Foundationপ্রথম নীতি থেকে
LEVEL 9

ডিস্ট্রিবিউটেড সিস্টেম

Distributed Systems

এই মডিউল যে প্রশ্নের উত্তর দেয়কেউ কারো উপর ভরসা করতে না পারলে, একদল computer কীভাবে একমত হয়?

Distributed system কঠিন কারণ তিনটা জিনিস একসাথে সত্য: message হারায়, node মরে, আর ঘড়ি মেলে না। এই module-এ আমরা দেখব এই তিন সমস্যা থেকেই consensus, replication, consistency model-এর জন্ম।

১৯ লেসন৪ প্রজেক্ট~১৪০ ঘণ্টাপড়ার সময় ১৬ ঘণ্টা ৫৮ মিনিট0%

লেসন

  1. 01কেন Distributed System কঠিন — ৮টা Fallacies আর partial failureNetwork নির্ভরযোগ্য ভাবার আটটা ভ্রান্তি ভেঙে দেখা যায় distributed-এর আসল শত্রু — partial failure, যেখানে কিছু node ভাঙে, বাকিরা চলে, আর কেউই পুরো সত্যটা জানে না।কঠিন৪৫ মিনিটEXPERIMENTBUILD
  2. 02Failure Models — Crash থেকে Byzantine পর্যন্ত ভাঙার সোপানPartial failure কতভাবে ঘটতে পারে তার নামকরণ — crash-stop থেকে omission, timing, আর সবচেয়ে কঠিন Byzantine পর্যন্ত adversary-strength ladder — আর দেখানো কেন সঠিক model বাছাই replica-সংখ্যা থেকে algorithm-design পর্যন্ত সবকিছু বদলে দেয়।কঠিন৫০ মিনিটEXPERIMENTBUILD
  3. 03Physical Time — NTP, Clock Skew, আর কেন Wall Clock বিশ্বাস করা যায় নাPhysical clock কখনো নিখুঁতভাবে sync হয় না — NTP bound দেয়, শূন্য করে না; সেই bounded skew LWW-তে silent lost-write জন্মায়, আর elapsed-time মাপতে হলে wall clock নয়, monotonic clock লাগে।কঠিন৪৮ মিনিটEXPERIMENTBUILD
  4. 04Logical Clock — Lamport আর Vector ClockWall-clock ভরসা করা যায় না বলে সময়-মাপা ছেড়ে causal ক্রম ট্র্যাক করি — Lamport clock একমুখী promise দেয়, vector clock উল্টোটাও জানিয়ে concurrency exact ধরে।কঠিন৫০ মিনিটEXPERIMENTBUILD
  5. 05Happens-before ও Causality — কার আগে কার পরেGlobal clock ছাড়াও cause-effect মাপা যায় — happens-before-এর তিন rule, concurrency-র আসল অর্থ, আর reply-before-parent-জাতীয় user-visible ভুল ঠেকানোর সস্তা কৌশল।অ্যাডভান্সড৫০ মিনিটEXPERIMENTBUILD
  6. 06Consistency Models — linearizability থেকে eventual ladderConsistency model মানে replica-client চুক্তি — linearizability real-time recency চায়, sequential শুধু per-process ক্রম, causal কারণ-প্রভাব, eventual শুধু শেষে মিল; ধাপ নামলে latency লাভ, reasoning-ভার application-এ।রিসার্চ-লেভেল১ ঘণ্টা ৫ মিনিটEXPERIMENTBUILD
  7. 07Quorum Replication — primary-backup, NWR, chainW+R>N pigeonhole fresh-read দেয়, linearizability নয়; sloppy quorum চুক্তি ভেঙে availability কিনে, hinted handoff ঋণ শোধে, আর chain replication strong consistency-সহ read-throughput বাড়ায়।অ্যাডভান্সড১ ঘণ্টাEXPERIMENTBUILD
  8. 08Leader Election — একজনকে দায়িত্ব দেওয়ার protocolReplication-এর চুক্তি একজন leader-এর হাতে থাকে; election protocol (bully, ring) সেই leader বাছে — কিন্তু failure detector ভুল হলে দুই leader জন্মায়, তাই epoch/term fencing number আর majority gate লাগে।কঠিন৪৫ মিনিটEXPERIMENTBUILD
  9. 09Paxos Intuition — consensus problem-এর প্রথম উত্তরNaive consensus attempt দুটো (first-wins, trust-the-leader) কংক্রিট scenario-তে ভেঙে দেখায় কেন majority-respect আর prior-discovery বাধ্যতামূলক — সেই দুই invariant থেকেই Basic Paxos-এর Prepare/Promise আর Accept/Accepted phase বেরিয়ে আসে, quorum-intersection যার safety-প্রমাণ।অ্যাডভান্সড৫৫ মিনিটEXPERIMENTBUILD
  10. 10Raft — বোঝার জন্য ডিজাইন করা consensusRaft consensus-কে তিন sub-problem-এ ভাগ করে — leader election (আগেই কভার হয়েছে), log replication (AppendEntries-এর consistency check-ই Log Matching Property-র উৎস), আর safety (election restriction + current-term-only commit rule, যা Figure 8-এর ফাঁদ এড়ায়)।অ্যাডভান্সড৫৮ মিনিটEXPERIMENTBUILD
  11. 11Two-Phase Commit — সবাই একসাথে, নয়তো কেউই না2PC সব participant-কে prepare-vote-এ একমত করিয়ে decide করে — কিন্তু vote yes-এর পরে participant lock ধরে in-doubt বসে থাকে, coordinator crash করলে আটকে যায়; 3PC-র PreCommit ফিক্স নিজেই partition-এ ভাঙে।অ্যাডভান্সড৫২ মিনিটEXPERIMENTBUILD
  12. 12Saga ও Distributed Transactions — 2PC-র বিকল্প পথ2PC-র blocking আর coordinator-SPOF scale-এ অসহনীয় — saga লম্বা transaction-কে local transaction-সিরিজ আর compensating action-এ ভাঙে; দাম হলো intermediate state বাইরের চোখে দেখা যাওয়া।অ্যাডভান্সড৫৫ মিনিটEXPERIMENTBUILD
  13. 13Idempotency ও Exactly-once-এর মিথRetry-যুক্ত যেকোনো channel-এ duplicate অনিবার্য — exactly-once বলতে আসলে at-least-once delivery-র সাথে idempotent effect; Idempotency-Key pattern-ই payment double-charge ঠেকানোর শিল্প-উত্তর।কঠিন৫০ মিনিটEXPERIMENTBUILD
  14. 14Message Queues — Kafka আর RabbitMQ-র দুই দর্শনQueue শেষ-হওয়া message মুছে দেয়, log চিরকাল রেখে reader-কেই সময় ঘোরাতে দেয় — RabbitMQ আর Kafka-র দুই দর্শন, push-বনাম-pull backpressure, আর partition-parallelism-এর গণিত।অ্যাডভান্সড১ ঘণ্টাEXPERIMENTBUILD
  15. 15Event-driven Architecture ও Event Sourcing — state যখন logState নিজে না রেখে event-stream থেকে derive — WAL যেমন crash-এর সত্য, event sourcing সেই সত্যকে business-level এ তোলে; লাভ audit আর temporal query, দাম projections আর GDPR-দ্বন্দ্ব।অ্যাডভান্সড৫৫ মিনিটEXPERIMENTBUILD
  16. 16Distributed Lock ও তার বিপদ — Redlock বিতর্কসহShared memory না থাকায় আর pause-মৃত্যু আলাদা করা যায় না বলে distributed mutual exclusion mutex-এর চেয়ে মৌলিকভাবে কঠিন; lease TTL crash সামলায় কিন্তু pause-এ ভাঙে — fencing token-ই ঢাল।অ্যাডভান্সড৫০ মিনিটEXPERIMENTBUILD
  17. 17Gossip Protocol ও CRDT — ছড়িয়ে পড়া আর conflict-free গণিতLeader ছাড়া cluster-এ খবর rumor-এর মতো ছড়ায় — মাত্র O(log N) round-এ; আর CRDT-র merge-algebra ওই এলোমেলো arrival-order-কেও অগ্রাহ্য করে সব replica-কে এক state-এ মিলিয়ে দেয়।রিসার্চ-লেভেল১ ঘণ্টা ৫ মিনিটEXPERIMENTBUILD
  18. 18Sharding at Scale — routing, rebalancing, hotspotPartitioning-গণিত শেখা হলেও production-এর আসল খেলা operational: request পৌঁছাবে কোথায়, node যোগ-বিয়োগে কত data নড়বে, আর celebrity-key কোন shard গুলিয়ে দেবে — এই তিন যুদ্ধের map।অ্যাডভান্সড৫৫ মিনিটEXPERIMENTBUILD
  19. 19Distributed Tracing — request-এর পুরো জীবন দেখাMicroservice-jungle-এ এক request কোথায় সময় খেল — logs বা metrics বলে না; trace-span-tree, traceparent-header, sampling-economics আর critical-path-analysis মিলে সেই মানচিত্র আঁকে।কঠিন৫০ মিনিটEXPERIMENTBUILD

যা যা থাকছে

  • কেন distributed systems কঠিন — 8 fallacies
  • Failure models — crash, omission, Byzantine
  • Time — physical clocks, NTP, clock skew
  • Logical clocks — Lamport, vector clocks
  • Happens-before ও causality
  • Consistency models — linearizability, sequential, causal, eventual
  • CAP ও PACELC
  • Replication — primary-backup, quorum, chain
  • Leader election
  • Consensus — Paxos-এর intuition
  • Raft — leader election, log replication, safety
  • Two-phase ও three-phase commit
  • Distributed transactions ও saga
  • Idempotency ও exactly-once-এর মিথ
  • Message queues — Kafka, RabbitMQ model
  • Event-driven architecture ও event sourcing
  • Distributed locks ও তাদের বিপদ
  • Gossip protocols ও CRDTs
  • Sharding ও consistent hashing
  • Distributed tracing

প্রজেক্ট

Vector Clock Library

●●●○○

Concurrent event detect করা।

Raft Implementation

●●●●●

Leader election + log replication, partition দিয়ে test।

Replicated KV Store

●●●●●

Quorum read/write, tunable consistency।

Chaos Lab

●●●●○

নিজের system-এ latency/partition inject করে behaviour দেখা।