Distributed lock với Redis trong Spring Boot
Cách tự cài distributed lock bằng SET NX PX và Lua script, dùng Redisson với watchdog, viết test bằng Testcontainers và tránh các lỗi hay gặp.
Cách tự cài distributed lock bằng SET NX PX và Lua script, dùng Redisson với watchdog, viết test bằng Testcontainers và tránh các lỗi hay gặp.
Dùng Bloom filter trên Redis (qua Redisson) để chặn request truy vấn key không tồn tại trước khi chúng xuyên qua cache và đập vào database.
Cách áp dụng cache-aside với Redis trong Spring Boot, xóa cache sau commit, xử lý race condition và kiểm thử bằng Testcontainers.
Cách nhận diện hot key và big key trong Redis bằng redis-cli, MEMORY USAGE, OBJECT FREQ và cách xử lý bằng tách key, UNLINK, local cache, nhân bản key.
Hiểu cách Redis ghi dữ liệu xuống đĩa bằng RDB và AOF, cấu hình từng chế độ, và nhận diện những tình huống vẫn mất dữ liệu dù đã bật persistence.
Dùng Redis Streams và consumer group trong Spring Boot 3 để xử lý sự kiện at-least-once, có ACK thủ công, retry message treo và dead-letter.
So sánh ba chiến lược cache phổ biến với Redis và Spring Boot 3: cách cài đặt, ưu nhược điểm, lỗi hay gặp và khi nào nên dùng từng loại.
Tìm hiểu thuật toán Redlock, tự cài đặt bằng Jedis, viết test với Testcontainers và hiểu vì sao Martin Kleppmann cho rằng nó không an toàn.
Giữ ghế tạm thời trong hệ thống đặt vé bằng Redis SET NX PX: khoá nguyên tử, tự hết hạn, giải phóng an toàn bằng Lua, có ví dụ Spring Boot 3 và test.
Dùng Redis Geo (GEOADD, GEOSEARCH) và Spring Data Redis để lưu tọa độ, tìm cửa hàng gần người dùng nhất và tính khoảng cách.
Dùng Redis sorted set với Spring Boot 3 để làm bảng xếp hạng, hàng đợi ưu tiên/hẹn giờ và rate limiter sliding window. Có code chạy được và test.
So sánh Redis Pub/Sub và Redis Streams, kèm ví dụ code Java cụ thể để bạn chọn đúng mô hình cho hệ thống của mình.
Tìm hiểu cách cấu hình TTL, cơ chế eviction của Redis và cách chống cache stampede khi nhiều request cùng miss cache.
Hướng dẫn xây dựng rate limiter với Redis và Lua script, áp dụng cho API Spring Boot, kèm ví dụ test bằng Testcontainers.
Tổng hợp các kiểu dữ liệu chính của Redis (String, Hash, List, Set, Sorted Set) kèm ví dụ Java và tình huống áp dụng thực tế.