第一次使用Debezium时,我在debezium中每分钟只收到大约1000条消息(与在线基准相比非常慢)。没有节流卡夫卡连接/ MySQL/ Kafka经纪人,不知道我在这里做什么。我将在这里张贴配置,以供参考。
Kafka的配置-连接工作人员:
-e CONNECT_GROUP_ID="quickstart" \
-e CONNECT_CONFIG_STORAGE_TOPIC="quickstart-config" \
-e CONNECT_OFFSET_STORAGE_TOPIC="quickstart-offsets" \
-e CONNECT_STATUS_STORAGE_TOPIC="quickstart-status" \
-e CONNECT_KEY_CONVERTER="org.apache.kafka.connect.json.JsonConverter" \
-e CONNECT_VALUE_CONVERTER="org.apache.kafka.connect.json.JsonConverter" \
-e CONNECT_INTERNAL_KEY_CONVERTER="org.apache.kafka.connect.json.JsonConverter" \
-e CONNECT_INTERNAL_VALUE_CONVERTER="org.apache.kafka.connect.json.JsonConverter" \
-e CONNECT_REST_ADVERTISED_HOST_NAME="localhost" \
-e CONNECT_CONFIG_STORAGE_REPLICATION_FACTOR=1\
-e CONNECT_OFFSET_STORAGE_REPLICATION_FACTOR=1\
-e CONNECT_STATUS_STORAGE_REPLICATION_FACTOR=1\```
Config of Kafka Debezium MySQL Connector 我使用了Kafka Debezium MySQL连接器的所有默认配置
发布于 2021-07-22 18:31:34
最好的方法是使用Avro系列化重新配置连接器,以减少消息的大小并跟踪架构更改。这应该会给你带来很大的进步。
Avro二进制格式是紧凑和高效的。Avro模式使确保每个记录都具有正确的结构成为可能。Avro的模式演化机制()使模式能够进化。--这对于Debezium连接器来说是必不可少的,它动态地生成每个记录的模式,以匹配被更改的数据库表的结构。
要查看从每个消息中删除模式的不同之处,在您的情况下,如果不使用Avro并设置架构注册表,请将下面的设置设置为false。在生产中不要用这种方式。
默认的行为是JSON转换器包含记录的消息模式,这使得每个记录都非常冗长。如果希望用JSON序列化记录,请考虑将以下连接器配置属性设置为
false:key.converter.schemas.enablevalue.converter.schemas.enable。将这些属性设置为false将从每个记录中排除详细的架构信息。
https://stackoverflow.com/questions/67968022
复制相似问题