Challenge: Thundering Herd Problem
Reproduce and analyze cache stampede under high concurrency, then propose a solution with clear reasoning.
Articles in the Concurrency category.
Reproduce and analyze cache stampede under high concurrency, then propose a solution with clear reasoning.
Giải thích sự khác nhau giữa AtomicLong và LongAdder trong Java concurrency, với trọng tâm là contention, performance và lựa chọn đúng theo bài toán.
Giải thích sliding window rate limiting từ góc nhìn thực tế: rate limiting là gì, cách hiểu '60 giây gần nhất', cách lưu timestamp theo từng user, và những vấn đề cần xử lý khi triển khai trong môi trường concurrent.
Giải thích concurrency, race condition, thread-safe, atomic và cách tránh các bug phổ biến trong backend khi xử lý nhiều request đồng thời.
Phân tích cách tổ chức dữ liệu dạng two-level map bằng ConcurrentHashMap, kèm code mẫu cập nhật counter an toàn dưới concurrent load.
Tổng hợp cách dùng Deque trong Java với ví dụ thực tế: FIFO, LIFO, sliding window và lưu ý concurrency.
Giải thích nguồn gốc Unix epoch, lý do chọn 1970, cách dùng trong Java, và Year 2038 problem.
Build an in-memory analytics API with per-user rate limiting, time-window stats, and hot-key cache protection under concurrency.
Phân tích Java Deque từ góc nhìn backend: semantics FIFO/LIFO, lựa chọn ArrayDeque vs LinkedList, và các pattern code thực chiến.
Phân tích sâu mô hình blocking thread-per-request và reactive event loop trong Spring Boot từ góc nhìn latency, throughput và vận hành.