Queue depth là số message hiện trong queue bao gồm cả unacked.
Queue depth tăng liên tục nghĩa là consumer đang xử lý chậm hơn producer (consumer lag).
Nguyên nhân: consumer chậm (CPU-bound, I/O wait, bug), thiếu consumer, downstream service fail.
Debug: kiểm tra consumer throughput, error rate, latency.
Giải pháp:
- Tăng số consumer;
- Tối ưu consumer code;
- Tăng prefetch nếu consumer bursty;
- Dùng DLX để isolate failure;
- Thêm observability để trace message chậm
Monitoring queue depth giúp phát hiện vấn đề trước khi user bị ảnh hưởng.
Queue depth is the number of messages in a queue including unacked.
- Growing depth indicates consumers falling behind producers (consumer lag).
- Root causes: slow consumer (CPU, I/O, bugs), too few consumers, downstream failures.
- Solutions: increase consumer count, optimize consumer code, increase prefetch for bursty consumers, use DLX to isolate failures.
- Monitoring queue depth catches issues hours before users notice.