我们有5位工作人员在不同的节点上运行,并使用以下配置启动连接器:
tasks.max=60
topics=test-topic
flush.size=2000000
rotate.interval.ms=30000
我们在输入主题中有50个分区,每个分区每1分钟获得约10万条记录。我们注意到连接器无法赶上这一步,它滞后了大约2个小时的数据量。阅读速度可能不够快。我们可以更改哪些配置以提高性能?
答案 0 :(得分:0)
Confluent工程师告诉我rotate.interval.ms
一次只允许一个文件编写器。
相反,您应该使用rotate.schedule.interval.ms
在该间隔内刷新文件(除非达到刷新大小),然后设置rotate.interval.ms=-1
(将其禁用)
此外,对于具有50个分区的主题,您最多只能执行50个任务。您可能需要添加更多的工作程序,但是我一直在给定的连接器(使用10GB堆)上使用3节点群集和100多个任务,并且看起来还可以
修改工作人员的consumer.*
属性
除此之外,您还必须从Connect框架外部监视Heap的使用,CPU和网络吞吐量,以了解真正的瓶颈在哪里。