Case study kỹ thuật

Luồng thi Redis-first

Tối ưu hot path đọc câu hỏi và autosave mà vẫn đảm bảo dữ liệu được lưu bền vững.

LaravelRedis HashQueueS3k6Distributed lock

01 · Bối cảnh

Hệ thống thi cần đọc câu hỏi và tự động lưu câu trả lời với độ trễ thấp. Luồng cũ ưu tiên S3 trên hot path, làm tăng thời gian phản hồi khi có nhiều thí sinh đồng thời.

02 · Bài toán

Giảm latency trên getQuestions và save, chống tạo bài thi trùng, đồng thời duy trì đường fallback và persist dữ liệu về storage bền vững.

03 · Kiến trúc

Luồng xử lý

01 Request thi
02 Distributed lock
03 Redis Hash
04 Queue persist
05 S3 storage

04 · Kết quả

Trong benchmark có kiểm soát với 25 VU, throughput tăng khoảng 6,1 lần; p95 getQuestions giảm khoảng 69% và p95 save giảm khoảng 70% so với luồng S3-first.

05 · Phạm vi sở hữu

Trực tiếp thiết kế, triển khai và benchmark luồng Redis-first.

06 · Trade-off

Redis giúp hot path nhanh hơn nhưng yêu cầu chiến lược fallback, rebuild và persist rõ ràng. Queue failure phải được retry và giám sát; không được xem số benchmark là SLA production.

Muốn trao đổi sâu hơn?

Tôi có thể trình bày các quyết định kỹ thuật, giới hạn và phương án thay thế trong buổi trao đổi.

Email cho tôi