Strom 0.9.2-incubating 斜街 Kafka 重复消费数据

一、问题描述

​ 今天在做 storm 斜街 kafka 作业的时候,storm 的 spout 作为 kafka 的消费者,接收到消息发送到 bolt 进行输出,发现 storm 一直提交的都是同样的偏移量,这就导致了重复消费数据。

二、解决方案

​ 在通过看 GitHub 上官方的示例后,发现是自己的 bolt 在输出数据之后没有发送 ack,这就导致了作为消费者的 spout 不会向 kafka 更新 offset,在加上 ack 后就 ok 了。

代码:

public void execute(Tuple input) {
    String log = input.getString(0);
    if(log.length() > 0) {
        System.out.println("【info, partition1: hive log】: " + log);
    }

    collector.ack(input);	//发送 ack 确认
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值