Angenommen, es werden keine Kafka-Ereignisse mehr veröffentlicht, wenn alle vorherigen Kafka-Ereignisse im Kafka-Broker aufgrund der Aufbewahrung abgelaufen sind und der zugehörige Konsument nicht alle Ereignisse verbraucht hat. Wird der entsprechende Kafka-Verbraucher mit bestimmten Partitionen stecken bleiben?Wenn das Kafka-Ereignis abläuft, bleibt der Lag des betreffenden Verbrauchers hängen?
0
A
Antwort
4
die Strömung wird so etwas wie dieses:
- Sagen Sie Ihre aktuellen Offset 100 ist, aber aufgrund der Aufbewahrungsfrist der früheste Offset verfügbar ist 110
- Ihr Consumer sendet eine FetchRequest Anforderung von Nachrichten von Offset 100.
- Kafka gibt einen Fehler (
OFFSET_OUT_OF_RANGE
um genau zu sein) zurück. - Ihr Kunde reagiert auf diesen Fehler, indem er eine OffsetRequest sendet, die angibt, auf welchen Wert er zurückgesetzt werden soll, sagen wir, in Ihrem Fall ist es
EARLIEST
. - Kafka gibt eine OffsetResponse mit verfügbaren Offset, 110 in Ihrem Fall.
- Ihr Benutzer setzt den aktuellen Offset zwangsweise auf 110 und beginnt erneut, den Abruf zu starten.
0
obwohl der Code aussah: (kafka 0.9 Verbraucher) gibt es resetStrategy definiert, wenn neue Verbraucher
public enum OffsetResetStrategy {
LATEST, EARLIEST, NONE
}
so erstellt wird, wenn außerhalb des Bereichs versetzt, als consmer weiterhin diese Politik
accoding LesenVerwandte Themen
- 1. Code bleibt hängen?
- 2. VS2015 Installation bleibt hängen
- 3. icCube-Last bleibt beim Start hängen
- 4. Desktop und desktop.browse werden unterstützt, aber das Durchsuchen bleibt hängen
- 5. Lag wenn recyclerview Scrollen
- 6. Katze bleibt beim seriellen Empfang hängen?
- 7. Bleibt PHPs Oracle PDO bei DELETE hängen?
- 8. ScrollBar bleibt bei der Definition von Max und Min hängen
- 9. Emacs 24.3.1 TRAMP bleibt beim Öffnen der Datei hängen
- 10. Der Browser bleibt hängen, auch wenn in XDebug/PHPStorm kein Breakpoint gesetzt ist
- 11. Erkennen, wenn eine Gerätesitzung abläuft
- 12. OSGi-Services-Architektur: Erstellung von Service auf Anfrage des Verbrauchers
- 13. Ejabberd 16.03 mit Elixir, Knoten bleibt hängen, wenn der erste Knoten ausgefallen ist
- 14. Ist die IdentityServer3-Sitzung konfigurierbar, sodass sie abläuft, wenn das Zugriffstoken abläuft?
- 15. Was würde verursachen, dass ein OdbcDataReader hängen bleibt?
- 16. jQuery Wasserzeichen, das bleibt, wenn fokussiert
- 17. Visual Studio 2010 bleibt beim Öffnen von Websites hängen
- 18. Einfacher Java HTTP-Proxy mit Sockets bleibt hängen ohne Fehlermeldung
- 19. Was passiert mit einer App, wenn das Entwicklungszertifikat abläuft?
- 20. Android - Was passiert, wenn ein Signaturschlüssel abläuft?
- 21. Sharepoint Drag & Drop bleibt hängen und wird geladen
- 22. Was passiert mit Mac-Anwendungen, wenn das Verteilungszertifikat des Entwicklers abläuft?
- 23. Visual Studio 2015 bleibt beim Löschen mehrerer Builds hängen
- 24. div, das oben auf der Statusleiste bleibt
- 25. Powershell-Skript bleibt hängen, wird nicht beendet, wenn es aus Batch-Datei aufgerufen wird
- 26. Feuer Ereignis, wenn reCAPTCHA Sitzung abläuft
- 27. Warum meine Anwendung hängen bleibt, wenn ich eine Warnung in meiner eigenen "uncoughtException()" -Methode zeige?
- 28. Kein Aufruf von didebecomeactive, wenn Hintergrundaufgabe abläuft
- 29. Was passiert, wenn die TestFlight-App abläuft?
- 30. Warum bleibt dieser Code in einer Endlosschleife hängen, wenn ich einen Buchstaben eingib?
Danke für Ihre Freigabe. Eine Sache, die ich bestätigen muss ist, dass, wenn ich High-Level-API verwende, der obige Offset-Reset-Flow für den Kunden transparent ist und nicht vom Endbenutzer kontrolliert werden kann? –
BTW, ich benutze alte Verbraucher mit High-Level-API. –
@BrianLing Dies gilt sowohl für alte als auch für neue Verbraucher. Ich bin nicht ganz klar mit Ihrer ersten Frage, aber von dem, was ich verstanden habe - dieser Prozess wird nicht vom Endbenutzer kontrolliert und passiert automatisch und unter der Haube. Der Endbenutzer könnte nicht einmal wissen, dass der Offset zurückgesetzt wurde. – serejja