Băm Nhất Quán (Consistent Hashing) Trong Go — Hạt Ảo (Virtual Nodes) & Rập Khuôn Vòng CRC32

Điều kiện tiên quyết: Đây là Phần 9 của Khóa Học System Design. Lội lại Phần 4: Phình To Cơ Sở Dữ Liệu đặng thông não mớ nền tảng mấy trò chặt thịt phân mảnh ngang (horizontal partitioning). Answer-first: Đạo luật Băm Nhất Quán (Consistent Hashing) đè ép độ tàn phá xáo trộn chìa khóa (key remapping) xuống mức kịch kim rẻ mạt nhất có thể mỗi bận có thằng bỏ hội hay đứa mới bon chen vào mâm (cluster membership changes). Lỡ bốc nhón thêm/bớt đúng 1 node vào cái ổ băm chia dư (modulo-hash cluster) là y như rằng nó hất cẳng lật tung 100% mâm khóa (catastrophic cache miss storm - bão văng cache). Cái bùa Băm Nhất Quán chọc lòi chỉ cấu xé nắn lại đúng có nhõn phần $K/N$ số lượng khóa — con số rẻ mạt tối hậu trên mặt lý thuyết. ...

18 tháng 6, 2026 · 14 phút · Tanh

Sharding Cơ Sở Dữ Liệu Trong Go — TiDB, PostgreSQL & Bể Kết Nối (Connection Pools)

Điều kiện tiên quyết: Đây là Phần 4 của Khóa Học System Design. Lội lại Phần 3: Chiến Lược Caching để ngấm mớ luật lệ tầng cache trước khi mò xuống vũng lầy lưu trữ (storage). Answer-first: Đập vụn DB (Database sharding) là màn phân phát dữ liệu dạt sang hai bên sườn (horizontally) rải đều ra mấy cái mảnh vỡ độc lập (independent partitions/shards) bám theo một cái chìa khóa dẫn đường (shard key), cốt để xoa dịu cái màn dẫm đạp chửi bới nhau lúc ghi dữ liệu (reducing write contention) và mở đường cho dung lượng phình to tỷ lệ thuận đâm lủng trần nhà (linear storage growth). Chấm mút chọn sai cái shard key là đẻ ra ngay mấy cái ổ kiến lửa (hot spots) lòi le, hậu quả còn bết bát thảm khốc hơn cả việc chẳng thèm sharding. ...

18 tháng 6, 2026 · 18 phút · Tanh

Chương 9: Database Sharding & Read/Write Splitting Dành Cho Các Bảng Dữ Liệu Hàng Tỷ Bản Ghi

← Bài trước | Series hub Chương 9: Mở Rộng Điểm Thắt Cổ Chai Database Cuối Cùng Đến ngưỡng ứng dụng của bạn gom được hàng chục triệu người dùng, Database sẽ tự động hóa thân thành điểm thắt cổ chai tối thượng. CPU giãy giụa chạm kịch trần 100%, RAM cạn kiệt, và mớ queries chạy mất tính bằng giây thay vì phần nghìn giây. Đây chính là cột mốc bắt buộc bạn phải tung ra các quân bài chiến lược phân tán database. ...

9 tháng 6, 2026 · 6 phút · Tuan Anh

MySQL Horizontal Scaling: Vitess & GORM Sharding

🇬🇧 Read the English version of this article on tanhdev.com Ngóc mọc lướt Khi ứng dụng của bạn vươn mình chạm ngõ ngóc mọc hàng triệu người dùng, một vọc lướt cỗ máy database ngóc mọc đơn độc (single database instance) lướt sớm muộn rọc vọc mọc cũng sẽ tự mình phình ngóc mọc lướt thành cái bọc cổ chai lướt rọc to ngóc mọc tướng nhất trong trọn ngóc mọc vọc bộ kiến trúc. Hòng rọc vọc đục để lướt vọc mọc giải quyết ngóc vọc mọc, việc vọc lướt rọc ngóc mọc mở rộng quy mô database MySQL (MySQL database scaling) rọc vọc mọc lướt lọt ngóc mọc thành vọc lướt rọc ngóc mọc điều rọc vọc bắt lướt mọc buộc (mandatory). Bạn vọc lướt rọc ngóc mọc phải vọc Bung Rộng DB mọc lướt cho Microservices (Scale DB for Microservices) vọc lướt sài mọc ngóc rọc các kỹ lướt mọc ngóc rọc thuật Horizontal Scaling (Bung Rộng Ngang). ...

1 tháng 6, 2026 · 16 phút · Tuan Anh

Scale MySQL: Replication, Sharding & Kiến trúc TiDB (Distributed SQL)

🇬🇧 Read the English version of this article on tanhdev.com Mở rộng quy mô (scaling) một cơ sở dữ liệu quan hệ là một trong những thử thách khắc nghiệt nhất trong thiết kế hệ thống. Khi ứng dụng tăng trưởng từ hàng nghìn lên hàng triệu người dùng hoạt động, cơ sở dữ liệu không còn chỉ là một công cụ lưu trữ đơn thuần mà trở thành điểm nghẽn (bottleneck) chính của toàn bộ kiến trúc hệ thống. ...

26 tháng 5, 2026 · 19 phút · Tuan Anh