Redis Streams

Định nghĩa

Redis Streams là append-only log trong Redis dùng cho event stream hoặc message queue có ID, ordering và consumer group.

Cách hiểu bằng lời của tôi

Redis List phù hợp queue đơn giản; Pub/Sub phù hợp fire-and-forget; Redis Streams nằm giữa: vẫn nhẹ hơn Kafka nhưng có persistence, acknowledgement và consumer group tốt hơn cho queue cần xử lý song song.

Cơ chế

  • Producer dùng XADD để append message vào stream.
  • Consumer group chia tải qua nhiều consumer bằng XREADGROUP.
  • Message đã đọc nằm trong pending entries list cho tới khi consumer XACK.

Giới hạn

  • Không thay thế hoàn toàn Kafka/Pulsar cho event streaming quy mô lớn, retention dài hoặc ecosystem stream processing sâu.
  • Vẫn bị ràng buộc bởi memory, replication và vận hành Redis.

Liên kết