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=3vàmin.insync.replicas=2kết hợp vớiacks=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.