Trung BìnhKafka iconKafka

Replication và ISR (In-Sync Replicas) trong Kafka là gì? Cách Kafka đảm bảo fault tolerance?

Mỗi partition có một leader và nhiều follower replica trên các broker khác nhau.

  • Leader xử lý tất cả read/write, follower chủ động pull data từ leader để sync.
  • ISR (In-Sync Replicas) là tập hợp các replica đang sync kịp với leader (không bị lag quá replica.lag.time.max.ms).
  • Khi leader broker bị lỗi, một replica trong ISR sẽ được bầu làm leader mới.
  • Cấu hình replication.factor=3min.insync.replicas=2 kết hợp với acks=all đảm bảo message chỉ được acknowledge khi ít nhất 2 replica đã ghi — bảo vệ khỏi mất data kể cả khi 1 broker bị lỗi.
  • Trong production nên dùng replication.factor >= 3 để chịu được lỗi của 2 broker đồng thời.

Xem toàn bộ Kafka cùng filter theo level & chủ đề con.

Mở danh sách Kafka