Đã tạo Index rồi. Sao Database vẫn chọn Full Scan? 🤔
Bảng `orders` có 20 triệu records. Query chậm. Index đã có. Nhưng chạy `EXPLAIN`, Database vẫn chọn Sequential Scan. Optimizer có vấn đề à? =)) Chưa chắc. Nếu 80% records thỏa điều kiện, dùng Index đôi khi còn tốn kém hơn đọc tuần tự cả bảng. Có Index không có nghĩa Database phải dùng Index. 🧠 TechCraft mở 5-Day Database Internals Challenge. 5 ngày đi từ Storage → Index → B-Tree vs LSM Tree → Index Selection → Execution Plan. Không phải học vài mẹo tối ưu SQL. Mà là hiểu Database thực sự làm gì bên dưới những câu Query chúng ta viết mỗi ngày.
API timeout nhưng server vẫn xử lý thành công thì hệ thống production sẽ xử lý thế nào?
Client gọi API tạo đơn hàng, chờ lâu quá nên timeout.
Đây là một lỗi rất dễ bị bỏ qua nếu chỉ test happy path. Khi hệ thống có traffic thật, retry, timeout hoặc nhiều service cùng tham gia, dữ liệu cuối có thể bị lệch.
Message queue xử lý trùng event thì hệ thống production sẽ xử lý thế nào?
Consumer nhận cùng một event hai lần do retry hoặc broker redelivery.
Đây là một lỗi rất dễ bị bỏ qua nếu chỉ test happy path. Khi hệ thống có traffic thật, retry, timeout hoặc nhiều service cùng tham gia, dữ liệu cuối có thể bị lệch.
Cache stale làm hiển thị sai giá hoặc sai tồn kho thì hệ thống production sẽ xử lý thế nào?
Giá sản phẩm đã đổi trong database nhưng cache vẫn giữ giá cũ.
Đây là một lỗi rất dễ bị bỏ qua nếu chỉ test happy path. Khi hệ thống có traffic thật, retry, timeout hoặc nhiều service cùng tham gia, dữ liệu cuối có thể bị lệch.
Chỉ còn 1 sản phẩm trong kho, vì sao hệ thống vẫn có thể bán thành công 2 đơn?
Một hệ thống bán hàng có một sản phẩm chỉ còn đúng 1 đơn vị trong kho.
Đây là một lỗi rất dễ bị bỏ qua nếu chỉ test happy path. Khi hệ thống có traffic thật, retry, timeout hoặc nhiều service cùng tham gia, dữ liệu cuối có thể bị lệch.
TechCraft Official
Đã tạo Index rồi. Sao Database vẫn chọn Full Scan? 🤔
Bảng `orders` có 20 triệu records.
Query chậm. Index đã có.
Nhưng chạy `EXPLAIN`, Database vẫn chọn Sequential Scan.
Optimizer có vấn đề à? =))
Chưa chắc.
Nếu 80% records thỏa điều kiện, dùng Index đôi khi còn tốn kém hơn đọc tuần tự cả bảng.
Có Index không có nghĩa Database phải dùng Index.
🧠 TechCraft mở 5-Day Database Internals Challenge.
5 ngày đi từ Storage → Index → B-Tree vs LSM Tree → Index Selection → Execution Plan.
Không phải học vài mẹo tối ưu SQL.
Mà là hiểu Database thực sự làm gì bên dưới những câu Query chúng ta viết mỗi ngày.
www.patreon.com/techcraft_official/posts/5-day-dat…
2 weeks ago (edited) | [YT] | 2
View 0 replies
TechCraft Official
Bạn không thể test hết mọi edge case.
Vì đôi khi… user chính là edge case.
#TechCraft #Developer #UIUX #DevLife
1 month ago | [YT] | 2
View 0 replies
TechCraft Official
Hôm qua mình vừa hoàn thành phần 20, cũng là phần cuối của series Replication & Scaling trên Dev Insider. 🔄
Series bắt đầu từ một câu hỏi:
Điều gì xảy ra khi một Database không còn đủ nữa?
Và càng đi sâu, câu hỏi lại chuyển thành:
Làm sao giữ được “sự thật” khi Data tồn tại ở nhiều nơi?
20 phần vừa rồi đi từ những vấn đề rất quen thuộc khi scale Database đến những bài toán khó hơn của Distributed Systems.
Nhưng câu chuyện về Truth chưa kết thúc.
Bởi còn một câu hỏi khác:
Current State cho chúng ta biết hệ thống đang ở đâu.
Nhưng liệu nó có kể được hệ thống đã đi đến đó bằng cách nào?
Đó sẽ là chủ đề của series tiếp theo:
Event Sourcing & CQRS — Khi Current State không còn đủ để kể lại sự thật.
Một series khép lại. Một series mới bắt đầu. 👨💻
Và như cam kết với anh em Dev Insider:
Mỗi ngày vẫn có một bài mới.
Link trọn bộ Replication & Scaling www.patreon.com/collection/2351128?view=expanded
1 month ago | [YT] | 6
View 0 replies
TechCraft Official
API timeout nhưng server vẫn xử lý thành công thì hệ thống production sẽ xử lý thế nào?
Client gọi API tạo đơn hàng, chờ lâu quá nên timeout.
Đây là một lỗi rất dễ bị bỏ qua nếu chỉ test happy path. Khi hệ thống có traffic thật, retry, timeout hoặc nhiều service cùng tham gia, dữ liệu cuối có thể bị lệch.
#TechCraft #Backend #SystemDesign #SoftwareEngineering #ProductionBug
2 months ago | [YT] | 8
View 0 replies
TechCraft Official
Message queue xử lý trùng event thì hệ thống production sẽ xử lý thế nào?
Consumer nhận cùng một event hai lần do retry hoặc broker redelivery.
Đây là một lỗi rất dễ bị bỏ qua nếu chỉ test happy path. Khi hệ thống có traffic thật, retry, timeout hoặc nhiều service cùng tham gia, dữ liệu cuối có thể bị lệch.
#TechCraft #Backend #SystemDesign #SoftwareEngineering #ProductionBug
2 months ago | [YT] | 12
View 0 replies
TechCraft Official
Cache stale làm hiển thị sai giá hoặc sai tồn kho thì hệ thống production sẽ xử lý thế nào?
Giá sản phẩm đã đổi trong database nhưng cache vẫn giữ giá cũ.
Đây là một lỗi rất dễ bị bỏ qua nếu chỉ test happy path. Khi hệ thống có traffic thật, retry, timeout hoặc nhiều service cùng tham gia, dữ liệu cuối có thể bị lệch.
#TechCraft #Backend #SystemDesign #SoftwareEngineering #ProductionBug
2 months ago | [YT] | 4
View 0 replies
TechCraft Official
Chỉ còn 1 sản phẩm trong kho, vì sao hệ thống vẫn có thể bán thành công 2 đơn?
Một hệ thống bán hàng có một sản phẩm chỉ còn đúng 1 đơn vị trong kho.
Đây là một lỗi rất dễ bị bỏ qua nếu chỉ test happy path. Khi hệ thống có traffic thật, retry, timeout hoặc nhiều service cùng tham gia, dữ liệu cuối có thể bị lệch.
#TechCraft #Backend #SystemDesign #SoftwareEngineering #ProductionBug
2 months ago | [YT] | 6
View 0 replies
TechCraft Official
AI trong tưởng tượng của chúng ta một thời =)))
2 months ago | [YT] | 4
View 0 replies
TechCraft Official
🇻🇳 VIỆT NAM VÔ ĐỊCH — DEV INSIDER GIẢM 50%! 🏆
🎁 Code: VNTOP1
Nếu chuyển khoản trực tiếp, mức ưu đãi:
🔥 35K tháng đầu — giá gốc 69K
🔥 280K / 6 tháng — giá gốc 329K
🔥 499K / 12 tháng — giá gốc 599K
Nếu bạn đang muốn đi sâu hơn về Backend, System Design, Architecture và tư duy Senior Engineer, đây là dịp khá đẹp để tham gia Dev Insider.
👉 Patreon: www.patreon.com/cw/techcraft_official/membership
Hẹn gặp anh em bên trong Dev Insider.
VIỆT NAM VÔ ĐỊCH! 🇻🇳🏆
2 months ago | [YT] | 5
View 4 replies
TechCraft Official
🎉 30K RỒI ANH EM Ạ!
TechCraft chính thức cán mốc 30.000 followers.
Chỉ muốn nói:
Cảm ơn anh em rất nhiều. ❤️
Cảm ơn vì vẫn đọc mấy bài dài ngoằng về Backend, Database, System Design.
Cảm ơn vì vẫn vào comment tranh luận.
Và cảm ơn vì vẫn ở đây dù lâu lâu TechCraft đăng mấy cái meme hơi nhảm 😂
30K thì phải có quà.
🎁 Giảm 30% khi tham gia Dev Insider
Code: TC30K
Dành cho anh em muốn đào sâu hơn về Software Engineering, Database, System Design,... và những thứ xảy ra ngoài đời thật khi code chạy lên production.
Thế thôi.
Cảm ơn 30.000 anh em
50K tính tiếp. 🚀
2 months ago | [YT] | 6
View 2 replies
Load more