min.insync.replicas

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ min.insync.replicas Π² Apache Kafka опрСдСляСт минимальноС количСство Ρ€Π΅ΠΏΠ»ΠΈΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π² синхронизированном состоянии для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ запись Π² Ρ‚Π΅ΠΌΡƒ ΡΡ‡ΠΈΡ‚Π°Π»Π°ΡΡŒ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΉ. Π­Ρ‚ΠΎΡ‚ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Π²Π°ΠΆΠ΅Π½ для обСспСчСния надСТности ΠΈ доступности Π΄Π°Π½Π½Ρ‹Ρ… Π² распрСдСлСнной систСмС.

Когда producer отправляСт сообщСниС Π² Kafka, ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠΉ (acknowledgments) Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ acks. Если установлСн Ρ€Π΅ΠΆΠΈΠΌ acks=all, Ρ‚ΠΎ запись Π±ΡƒΠ΄Π΅Ρ‚ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒΡΡ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΉ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ‚ΠΎΠΌ случаС, Ссли ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ min.insync.replicas Ρ€Π΅ΠΏΠ»ΠΈΠΊ подтвСрдят ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ сообщСния. Π­Ρ‚ΠΎ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ΠΏΠΎΡ‚Π΅Ρ€ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Π² случаС сбоя ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ€Π΅ΠΏΠ»ΠΈΠΊ.

НапримСр, Ссли Ρƒ нас Π΅ΡΡ‚ΡŒ Ρ‚ΠΎΠΏΠΈΠΊ с трСмя Ρ€Π΅ΠΏΠ»ΠΈΠΊΠ°ΠΌΠΈ ΠΈ ΠΌΡ‹ установили min.insync.replicas=2, это Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ для ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΉ записи сообщСния ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ Π΄Π²Π΅ ΠΈΠ· Ρ‚Ρ€Π΅Ρ… Ρ€Π΅ΠΏΠ»ΠΈΠΊ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π² синхронизированном состоянии. Если количСство синхронизированных Ρ€Π΅ΠΏΠ»ΠΈΠΊ ΠΏΠ°Π΄Π°Π΅Ρ‚ Π½ΠΈΠΆΠ΅ этого ΠΏΠΎΡ€ΠΎΠ³Π°, producer Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ ошибки ΠΏΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ сообщСния, Ρ‡Ρ‚ΠΎ позволяСт ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΏΠΎΡ‚Π΅Ρ€ΡŽ Π΄Π°Π½Π½Ρ‹Ρ….