Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Debezium-Flush-Timeout und OutOfMemoryError-Fehler bei MySQL

Dies ist eine sehr komplexe Frage - zunächst einmal sind die Standardspeichereinstellungen für Debezium Docker-Images ziemlich niedrig, sodass es notwendig sein kann, sie zu erhöhen, wenn Sie sie verwenden.

Als nächstes spielen mehrere Faktoren eine Rolle. Ich empfehle folgende Schritte.

  1. Erhöhen Sie max.batch.size und max.queue.size - reduziert die Anzahl der Commits
  2. Erhöhen Sie offset.flush.timeout.ms - gibt Connect Zeit, angesammelte Datensätze zu verarbeiten
  3. Verringern Sie offset.flush.interval.ms - sollte die Menge der kumulierten Offsets reduzieren

Leider gibt es ein Problem KAFKA-6551 hinter der Bühne lauern, die immer noch Chaos anrichten können.