Skip to content

v2.4.21优化kafka写入性能和写入格式

Vinllen Chen edited this page Mar 9, 2021 · 1 revision

性能

参见#553
由于之前版本单线程进行序列化,而且只能默认指定1个partition 0,导致写入性能存在瓶颈。2.4.21版本优化写入性能,采用多线程写入,并且可以指定多个partition,增加以下2个参数:

  • tunnel.kafka.partition_number. 控制写入的partition个数,具体oplog是写入到哪个partition是由incr_sync.shard_key参数决定,默认按照表进行hash,保证单个partition的有序。默认为1。
  • incr_sync.tunnel.write_thread. 控制序列化的线程个数,默认为1个tunnel(worker)对应1个。该参数必须为worker的倍数,比如worker默认是8,如果该参数为24,则每个worker对应3个解析线程。

格式

参见#542
采用externded json format格式。