Bạn có biết?
Khi bạn cần import 10.000 sản phẩm vào cache Redis, mỗi lệnh SET mất khoảng 0.1ms qua mạng LAN. Với cách thông thường, tổng thời gian là 1 giây — nhưng với Pipeline, con số này giảm xuống chỉ còn 50ms. Đó là sức mạnh của Pipeline — kỹ thuật gom nhiều lệnh thành một batch, gửi và nhận kết quả trong một lần duy nhất.
Pipeline là gì?
Pipeline là kỹ thuật gom nhiều lệnh Redis lại, gửi tất cả cùng lúc qua mạng, rồi nhận tất cả kết quả cùng lúc. Thay vì mỗi lệnh phải chờ round-trip (RTT), Pipeline chỉ cần 1 round-trip cho toàn bộ batch.
Ví dụ, gửi 5 lệnh không có Pipeline:
Client → SET key1 → Server → OK (RTT 1)
Client → SET key2 → Server → OK (RTT 2)
Client → SET key3 → Server → OK (RTT 3)
Client → GET key4 → Server → value4 (RTT 4)
Client → GET key5 → Server → value5 (RTT 5)
# Tổng: 5 round-trips
Với Pipeline:
Client → SET key1 + SET key2 + SET key3 + GET key4 + GET key5 → Server
Client ← OK + OK + OK + value4 + value5 ← Server
# Tổng: 1 round-trip 🚀
Pipeline ≠ Transaction
Nhiều người nhầm lẫn Pipeline với Transaction. Điểm khác biệt chính:

0 bình luận
Đang tải bình luận...
Để lại bình luận