Distributed Fundamentals — minh họa tương tác
Ba module: (1) CAP explorer — kéo mức partition để thấy trade-off Consistency ↔ Availability; (2) Vector clock — 3 node gửi/nhận event, theo dõi causal vs concurrent; (3) Quorum visualizer — chỉnh N/W/R để thấy vùng giao đảm bảo strong consistency.
Module 1 CAP Explorer
Kéo slider mức độ partition (mất gói giữa hai nửa cụm). Chọn chế độ ưu tiên CP hay AP và xem hệ phản ứng thế nào khi mạng đứt. Lúc partition = 0 (mạng ngon), cả hai chế độ đều vừa nhất quán vừa sẵn sàng — trade-off chỉ kích hoạt khi partition tăng.
Module 2 Vector Clock — 3 node
Mỗi node giữ vector [A,B,C]. Local event: tăng phần tử của mình. Gửi → X: đính kèm vector, node X nhận sẽ max từng phần tử rồi tăng phần tử của X. Mỗi event được ghi log kèm vector; bảng dưới so sánh hai event bất kỳ là causal hay concurrent.
Node A
Node B
Node C
| So sánh | Quan hệ |
|---|---|
| Tạo ≥ 2 event để so sánh. | |
Module 3 Quorum Visualizer
Chỉnh số replica N, số node ghi W, số node đọc R. Điều kiện strong consistency là R + W > N (tập đọc & ghi giao nhau). Vòng tròn dưới minh họa: node tô cam = trong tập W (write), viền xanh = trong tập R (read); node vừa cam vừa viền xanh = giao điểm (đảm bảo đọc thấy write mới).