Was geschieht mit Kafka-Produzenten, wenn eines der Replikate fehlschlägt und Partitionen von diesem Replikat anderen Brokern zugewiesen werden? Werden sie anfangen zu versagen? Oder ist dieser Failover-Prozess komplett transparent?Können Produzenten während der Wiederherstellung ein Kafka-Thema schreiben?
Antwort
Der Prozess ist transparent, solange innerhalb eines konfigurierbaren Zeitraums ein neuer Leiter für die fehlerhaften Partitionsleiter zugewiesen werden kann.
Nachrichten, die Partitionen zugeordnet sind, deren Leader in einem Broker fehlgeschlagen ist, werden im Producer für request.timeout.ms in die Warteschlange gestellt. Wenn innerhalb dieser Zeit ein neuer Leiter zugewiesen wird, was der Normalfall ist, wenn Sie mehr als einen Broker und einen RF> 1 haben, werden alle Nachrichten in der Warteschlange an den neuen Leiter gesendet. Wenn nach dieser Zeit kein neuer Vorspann für fehlgeschlagene Partitionen zugewiesen werden kann, wirft der Hersteller org.apache.kafka.common.errors.TimeoutException: Batch Expired.
Es kann auch vorkommen, dass der Produzent den Sendepuffer (mit konfigurierbarer Größe buffer.memory) füllt, bevor ein neuer Leader verfügbar ist. In diesem Fall wird der Producer für max.block.ms blockieren und danach eine TimeoutException auslösen.
Es hängt von Ihrem Hersteller bestätigt (acks
) und retries
Config und Broker Seite min.insync.replicas
Config und Thema replication-factor
.
Wenn Sie eine ordnungsgemäße Konfiguration und anständige Clustergröße haben, ist ein Replikat Failover in den meisten Fällen transparent. zum Beispiel acks = 1 und wiederholen Sie 2 oder 3 mal und min.insync.replicas weniger als Topic Replikationsfaktor.
- 1. memsql Datenaufblähung während der Wiederherstellung
- 2. Android löscht meine Dateien während der Wiederherstellung
- 3. Können Ausnahmen zwischen Wiederherstellung und Maske schleichen?
- 4. Zurück zum Produzenten
- 5. kann nicht ausführen unlisten während der Wiederherstellung ausführen
- 6. Wiederherstellung der Standardklassen
- 7. In Kafka, kann ich ein einzelnes Kafka-Thema erstellen und mehrere Produzenten schreiben
- 8. Wiederherstellung der Azure Autorest-Paketabhängigkeit
- 9. Wiederherstellung der Azure-Site
- 10. Ein Prozess schreiben, während der andere den gemeinsamen Speicher liest
- 11. Schreiben Unit-Tests für die Wiederherstellung in Python
- 12. zurück ein Zeichen während CSV schreiben
- 13. In die Textbox während der Animation schreiben
- 14. Apache Camel Produzenten und Verbraucher
- 15. Warum nicht etwas wie Auswahl ((* von Produzenten auswählen)) von Produzenten; Arbeit?
- 16. Stackoverflow während Parcel Schreiben
- 17. Wiederherstellung der Registrierung aus Datei
- 18. RabbitMQ Verbindung automatische Wiederherstellung
- 19. Können Grails Antworten schreiben?
- 20. Garantierte einmalige globale Transaktion für Kafka-Produzenten
- 21. Wiederherstellung der Datenbank von einem gehackten System
- 22. Lost colorscheme nach der Wiederherstellung der Auslagerungsdatei
- 23. Wie viele Produzenten in Kafka erstellen?
- 24. Nuget Wiederherstellung kontinuierliche Integration
- 25. Können Sie auf [PC] schreiben?
- 26. Wiederherstellung Rückruf - Kopfzeileninformationen beibehalten
- 27. Wie man Produzenten in kafka auflistet
- 28. Delphi - Wiederherstellung der tatsächlichen Zeile in DBGrid
- 29. Können Sie in ein Byte-Array mit einem FILE schreiben *
- 30. Berechtigung zum Schreiben in das Programmverzeichnis während der Laufzeit anfordern