80/20 · 8 ý tưởng lõi
Tám nguyên lý lặp lại trong cả 66 khái niệm backend.
Tám ý này lặp lại trong cả 66 khái niệm. Học nhóm nào cũng quay về đây.
Tám ý
1. Bài toán trước, công nghệ sau
Hiểu nghiệp vụ và quy mô thật rồi mới chọn giải pháp. Gặp ở A1–A4, D1, D2.
2. Mọi thứ là đánh đổi
Không có lựa chọn tốt nhất, chỉ có lựa chọn phù hợp. Gặp ở D3, D7, F2, F3, G1, G7, E2, C4.
3. Nhất quán và khả dụng
Muốn dữ liệu luôn đúng thì phải chờ. Muốn luôn phục vụ thì chấp nhận lệch tạm. Gặp ở C4, D7, D9, E1, E4.
4. Để gần hơn là nhanh hơn
Dữ liệu càng gần người dùng càng nhanh: trình duyệt, CDN, Redis, rồi mới tới DB. Gặp ở C2, D4, H3, H7, H8.
5. Chia để trị
Một máy không đủ thì chia tải và chia dữ liệu. Gặp ở C3, C5, D8, D9, H2, H7.
6. Tách rời bằng bất đồng bộ
Không bắt ai chờ ai: đừng chặn luồng, đẩy việc vào hàng đợi hoặc sự kiện. Gặp ở B2, G2, G5, G6, G8, I3.
7. Mọi thứ đều có thể lỗi
Mạng chậm, request lặp, deploy hỏng. Cần timeout, idempotency, khóa, rollback, giám sát. Gặp ở B5, F1, E2, E3, H5, H6, J1.
8. Bảo vệ lối vào
Không tin dữ liệu bên ngoài. Xác thực, phân quyền, giới hạn tần suất, giữ kín secret. Gặp ở F9, F10, C1, F5, F7, F8, G4.