Kafka暂停并恢复消息丢失

时间:2018-08-09 09:14:33

标签: apache-kafka kafka-consumer-api resume pause

嗨,我最近创建了一个程序来提取数据并将其保存到kafka。

为了进行测试,我将1到20000之间的数据放入kafka中,使用以下代码读取记录并进行打印。 如果没有暂停和恢复,则正常输出为1到20000。 但是当运行暂停和恢复时,打印中会有一个空数字。

在我的程序中经常使用暂停和恢复。 所以它似乎会影响偏移值。

您经历过同样的事情吗?

consumer.handler(record -> {
        try {
            JsonObject json = record.value();
            final String value = json.getString("data_source");
            System.out.println(value); //value=record.Number

            count++;                
            if (count%1000==0) {
                consumer.pause();
                System.out.println("Pause & Resume >>>>>>>>");
                count=0;
                consumer.resume();
            }
  

结果:[1,2,3,(空数),10,11,12,~~(空数)〜,19998,19999,20000]

0 个答案:

没有答案