Ich benutze Spring Kafka Consumer, die Nachrichten von einem Thema abruft und sie in einer db persistent. Wenn eine Fehlerbedingung erfüllt ist, sagen wir zum Beispiel, dass die Datenbank nicht verfügbar ist, stellt die Kafka-Benutzerbibliothek einen Mechanismus zum erneuten Versuch bereit? Wenn dies der Fall ist, können verschiedene Wiederholungsintervalle eingestellt werden, z. B. 1. Wiederholung nach 5 Minuten, 2. nach 30 Minuten, 3. nach 1 Stunde etc.Frühling Kafka Consumer Retry
2
A
Antwort
1
Frühling Kafka wird mit RetryingMessageListenerAdapter
und RetryingAcknowledgingMessageListenerAdapter
geliefert. Wenn Sie @KafkaListener
verwenden, können Sie AbstractKafkaListenerContainerFactory
mit der RetryTemplate
liefern. Und die letzte kann mit jedem benutzerdefinierten RetryPolicy
und BackOffPolicy
vom Frühling Retry Projekt injiziert werden:
bedenken Sie auch, dass seit Version 2.0
gibt es Transaktionsunterstützung im Frühjahr Kafka, basierend auf einer solchen ein in der Apache Kafka 0.11.x.x
:
https://docs.spring.io/spring-kafka/docs/2.0.0.RELEASE/reference/html/_reference.html#transactions
Verwandte Themen
- 1. Frühling Kafka Consumer/Listener-Gruppe
- 2. Hallo, wie Frühling-Kafka Consumer-Thread behandeln?
- 3. Frühling-Kafka Hörer Konkurenz
- 4. Frühling Kafka Nachricht Verbraucher Verzögerung
- 5. Consumer keine Nachrichten, Kafka-Konsole, neue Consumer-API, Kafka 0,9
- 6. Frühling Retry CompositeRetryPolicy funktioniert nicht
- 7. kafka Consumer Sessions Zeitüberschreitung
- 8. Kafka Consumer in Node.js
- 9. Kafka Consumer Rebalancing Bedingung
- 10. kafka-consumer-groups.sh entspricht?
- 11. Kafka Consumer Query
- 12. Kafka Consumer - JMX Eigenschaften
- 13. Kafka Consumer nicht konsumieren
- 14. Kafka Consumer/Producer API
- 15. Kafka Java Consumer
- 16. Kafka Consumer beitreten Cluster
- 17. Apache Kafka - Consumer Fundamentals
- 18. Kafka Consumer - Umfrageverhalten
- 19. Kafka Consumer Polling Timeout
- 20. Spring-Kafka Consumer Group Koordination für ConcurrentKafkaListenerContainerFactory
- 21. Kafka-Thema mit kafka consumer nicht lesen?
- 22. Ruhe-Controller, um Datensätze in kafka über Frühling kafka
- 23. Kafka Consumer Vs Apache Flink
- 24. Kafka Consumer Group Offset Retention
- 25. Kafka Topic-pro-Consumer-Konfiguration
- 26. Erhalte Duplikate in Kafka Consumer
- 27. Apache Kafka Consumer nach Datum
- 28. Ist kafka consumer 0.9 abwärtskompatibel?
- 29. Ist kafka consumer 0.10 abwärtskompatibel?
- 30. Kafka Producer Consumer API Problem
Dank Artem, als ich 10 Offsets sagt zum Beispiel in einer Partition. Wenn die Nachricht bei Offset 5 nicht in die DB eingefügt werden kann, würde dies auf der Grundlage der Wiederholungskonfiguration versucht werden, die ich einstelle, während die Offsets 6 bis 10 weiterhin als Teil des normalen Prozesses ausgeführt werden? Oder würde der Verbraucher warten, bis 5 erfolgreich abgeschlossen wurde? Ich nehme an, die Nachricht wird nicht für Offset 5 festgeschrieben, bis die Wiederholungsversuche erschöpft sind –
Das ist richtig. Datensätze in der gleichen Partition werden sequentiell verarbeitet, und daher wird "6" nicht verarbeitet, bis "5" erfolgreich ist oder in der Wiederholung erschöpft ist. –
Danke, eine letzte Frage. Kann ich den Wiederholungsversuch nur für bestimmte Fehlertypen aktivieren? –