Ngừng Đặt Connection Pool Theo Cảm Tính: Tối Ưu DB Đúng Cách
Tìm hiểu lý do connection pool quá lớn làm chậm database và cách tính toán dung lượng connection pool chuẩn xác cho ứng dụng backend.
#database
← Mục lụcTìm hiểu lý do connection pool quá lớn làm chậm database và cách tính toán dung lượng connection pool chuẩn xác cho ứng dụng backend.
Tìm hiểu lý do query DB trong vòng lặp gây sập hệ thống và cách khắc phục triệt để bằng JOIN, prefetch và DataLoader trong TypeScript.
Hướng dẫn dùng Optimistic Locking để chống ghi đè dữ liệu âm thầm trong ứng dụng web khi xử lý bất đồng bộ. Có ví dụ code SQL và TypeScript.
Hướng dẫn chi tiết cách dùng Transactional Outbox Pattern để xử lý triệt để lỗi mất dữ liệu khi gửi event trong DB transaction.
Khóa chính UUIDv4 gây phân mảnh B-Tree index và làm chậm tốc độ ghi database. Khám phá lý do UUIDv7 và ULID là giải pháp thay thế hoàn hảo cho hệ thống.
Tìm hiểu lý do LIMIT và OFFSET làm chậm database khi dữ liệu lớn, và cách tối ưu hiệu năng bằng Cursor Pagination qua các ví dụ thực tế.