Tại sao việc sử dụng Thread Pool hoặc Connection Pool không giới hạn (unbounded) lại là nguyên nhân gây ra sự cố sập hệ thống dưới tải cao?
Việc sử dụng unbounded pool khiến hệ thống cố gắng tạo ra vô hạn các tài nguyên (thread hoặc kết nối) khi lưu lượng tăng đột biến. Điều này dẫn đến cạn kiệt tài nguyên hệ điều hành (Memory, File Descriptors, CPU context switching). Khi tài nguyên cạn kiệt, hệ thống sẽ rơi vào trạng thái không thể phản hồi (unresponsive). Giải pháp Enterprise là sử dụng Bounded Pool với cơ chế hàng đợi (queue) có giới hạn và chiến lược từ chối (rejection policy) phù hợp, giúp hệ thống duy trì sự ổn định thay vì sụp đổ hoàn toàn.
Làm Chủ Phỏng Vấn & Nâng Cao Trình Độ Chuyên Nghiệp
Hệ thống khóa học thực chiến chuẩn Enterprise giúp bạn tự tin chinh phục mọi kỳ phỏng vấn kỹ thuật và thăng tiến thu nhập.
Tải Tuyển Tập 100+ Câu Hỏi Phỏng Vấn Chuyên Sâu (PDF)
Bộ tài liệu chuẩn Senior do Unicode Academy tuyển chọn & biên soạn, hỗ trợ tải về định dạng PDF chuẩn in ấn.
Cần Mentor Phỏng Vấn Thử 1-1 & Tối Ưu CV?
Mô phỏng phỏng vấn kỹ thuật thực tế 1-1 qua Google Meet, nhận xét chi tiết điểm mạnh/yếu và sửa CV trực tiếp cùng giảng viên Unicode.
Kiểm Tra CV Chuẩn ATS Miễn Phí
Tải CV của bạn lên để hệ thống AI rà soát từ khóa kỹ năng, định dạng và tính điểm chuẩn nhà tuyển dụng.
Câu hỏi availability & reliability liên quan cùng chủ đề
- Circuit Breaker Pattern là gì? Giải thích các trạng thái của Circuit Breaker và cách nó giúp hệ thống chống lại hiện tượng Cascading Failures trong kiến trúc Microservices. Junior
- Health Check endpoints (Liveness Probe và Readiness Probe) đóng vai trò gì trong việc duy trì tính sẵn sàng của ứng dụng chạy trong môi trường container hóa? Junior
- Tại sao việc sử dụng cơ chế Retry kết hợp với Exponential Backoff và Jitter lại cực kỳ quan trọng khi gọi các API bên thứ ba không ổn định? Junior
- Distributed Lock là gì? Tại sao việc sử dụng In-memory Lock của một tiến trình đơn lẻ lại thất bại trong hệ thống phân tán khi xử lý bài toán tranh chấp tài nguyên? Junior
- Rate Limiting là gì và tại sao một lập trình viên Junior cần phải nắm vững cơ chế này để bảo vệ tính sẵn sàng của hệ thống Backend? Junior


