Quay lại danh sách case study
Xây dựng hệ thống Cache dữ liệu thông minh ở tầng Client
Thiết kế cơ chế cache dữ liệu API động giúp giảm tải server và tăng tốc độ chuyển trang.
Bối cảnh
Ứng dụng dashboard quản trị gọi quá nhiều request trùng lặp khi người dùng chuyển qua lại giữa các tab.
Vấn đề cần xử lý
Server chịu tải cao không cần thiết và người dùng phải chờ đợi việc tải lại dữ liệu tĩnh đã được lấy trước đó.
Hướng xử lý đề xuất
Xây dựng một module cache tùy chỉnh sử dụng Map kết hợp thời gian sống TTL (Time To Live) và cơ chế stale-while-revalidate.
Câu trả lời mẫu khi phỏng vấn
Tôi đã thiết kế một tầng cache client-side sử dụng JavaScript Map để lưu trữ kết quả các API GET quan trọng. Module này tự động kiểm tra TTL trước khi gọi mạng, đồng thời hỗ trợ cơ chế stale-while-revalidate để hiển thị dữ liệu cũ ngay lập tức trong lúc fetch dữ liệu mới ngầm.
Trade-off
Tăng độ phức tạp trong việc đồng bộ trạng thái dữ liệu và xử lý trường hợp dữ liệu bị cũ (stale data).
Kết quả kỳ vọng
Giảm số lượng request gửi lên server đi bốn mươi phần trăm và mang lại cảm giác phản hồi tức thì cho người dùng.
Bài học khi trả lời phỏng vấn
Cần kết hợp chặt chẽ giữa client-side caching và chiến lược invalidate cache ở tầng backend để đảm bảo tính nhất quán.