✅ Checkpoint: nền tảng scale và session

By Better Wise

Quiz

  1. App đang chạy ổn ở 60 RPS, CPU 25%. Đợt sale đẩy lên 480 RPS, CPU lên 100%, p95 latency tăng vọt và throughput không tăng thêm dù tải vẫn tăng. Nút thắt đầu tiên nằm ở đâu?
    • I/O của database
    • CPU của app server
    • RAM vì cache không có TTL
    • Connection pool database
  2. Một API chịu 400 RPS trên máy 4 vCPU. Nâng lên 8 vCPU chỉ được khoảng 750 RPS, nâng lên 16 vCPU được khoảng 1.250 RPS. Hiện tượng này nói lên điều gì về scale dọc?
    • Scale dọc luôn tuyến tính, số đo trên chỉ là sai số đo lường
    • Scale dọc cho hiệu suất dưới tuyến tính: gấp đôi tài nguyên không được gấp đôi throughput
    • Scale dọc bị giới hạn vì phải sửa code mới dùng được thêm core
    • Scale dọc không dùng được cho database nên phải sharding ngay
  3. Sau khi thêm server thứ hai, người dùng liên tục bị đăng xuất ngẫu nhiên. Nguyên nhân phù hợp nhất là gì?
    • Session đang lưu trong Map của từng process, nên request rơi vào server khác thì không thấy session
    • JWT hết hạn quá nhanh vì access token quá ngắn
    • Redis session store thiếu replica nên mất key
    • Database chưa được scale dọc nên mất dữ liệu đăng nhập
  4. Đội của bạn cân nhắc dùng sticky session để chữa lỗi đăng xuất khi chạy nhiều server. Cái giá phải trả của cách này là gì?
    • Mất cân bằng tải, mất session khi server đó chết, và autoscale gần như vô nghĩa
    • Không thu hồi được token ngay khi user đăng xuất
    • Phải đặt session store khác region với app server
    • Mỗi request thêm 0.5 đến 2ms để đọc session store
  5. Với 300 RPS và mỗi request giữ connection database khoảng 250ms, số connection cần thiết xấp xỉ là ____ (nhập số).
  6. Một server được gọi là ____ khi mỗi request mang đủ thông tin để xử lý và server không giữ ký ức riêng giữa các request.
  7. Khi lưu session trong Redis, mỗi key cần có ____ để key cũ tự hết hạn và user không hoạt động bị đăng xuất.
  8. Bạn nhận một app chạy 100 RPS, CPU 30%, p95 latency 2 giây, RAM ổn định, database CPU 90% và iowait cao. Hãy trình bày cách bạn xác định nút thắt và chọn hướng scale, kèm chỗ đặt session.

Sign in to submit answers.